2014-03-07 37 views
1

正如你可以從標題看到的,我試圖在兩個對話窗口之間結合動作。特別是我有這種類型的DialogWindow(Connection_Database.ui): enter image description here結合兩個QT對話框Windows

正如您從上面的想象中可以看到的,有兩個按鈕「編輯」。有了這兩個按鈕,我想在左側編輯相應的標籤。因此,推動「編輯」打開其他的對話窗口(edit.ui):

enter image description here

lineEdit在初始對話應該改變它的值從第二對話的新值。

我應該用什麼樣的設計來達到這個目的?

+1

這是不必要的複雜和醜陋。爲什麼不簡單地禁用'QLineEdit'字段,並在用戶點擊'Edit'時啓用相應的字段:'lineEditServerName-> setEnabled(false)'; –

+0

@ W.K.S第一張圖片上的兩行是標籤,默認情況下通過使用LOAD SETTINGS按鈕讀取.ini文件來顯示一些信息。但我希望可以通過單擊「保存設置」來更改單擊編輯的值並保存這些新值。對我來說,尊重我指定的程序非常重要。無論如何,我不明白你的建議.... – CecchinoSMI

+1

你有什麼確切的問題?你可以讓你的'Edit'對話框返回一個'QString'。 – thuga

回答

1

樣品(僞),基於評論:

class d1 // your first dialog 
{ 
    void setText(QString text) 
    { 
    ui->text1->setText(text); 
    } 
}; 

class d2 // your second dialog 
{ 
    QString getText() const 
    { 
    return ui->bigtextfield->text(); 
    } 
}; 

d1 diag1; 
d2 diag2; 

void DataTransfer(d1& _d1, d2& _d2) . 
{ 
    _d1.setText(_d2.getText()); // Somewhere in your app 
}