0
我有一個應用程序與兩個主窗口,我想捕捉事件從一個到另一個。例如,在button1_MouseClick事件(其中按鈕1位於Form1上)時,我想將文本更改爲label1(其中label1位於form2上)。這是可能的QT C++,如果是的話,如何?你能發佈一些代碼片段嗎?窗口事件之間
P.S.我已經實現了我想用一個定時器和一個全球性的布爾值什麼,但我不喜歡
謝謝
我有一個應用程序與兩個主窗口,我想捕捉事件從一個到另一個。例如,在button1_MouseClick事件(其中按鈕1位於Form1上)時,我想將文本更改爲label1(其中label1位於form2上)。這是可能的QT C++,如果是的話,如何?你能發佈一些代碼片段嗎?窗口事件之間
P.S.我已經實現了我想用一個定時器和一個全球性的布爾值什麼,但我不喜歡
謝謝
我不得不爲形式2類中的公共職能,要求會改變時標籤。然後將button1_MouseClick事件連接到調用Form 2公共函數的Form 1類中的私有函數。
沿着這也許行:
class form1 : public QMainWindow
{
//Put in everything else class needs
private slots:
void callChangeLabel();
};
void form1::callChangeLabel()
{
//f2 is an instance of form2
f2->changeLabel();
}
class form2 : public QMainWindow
{
//Put in everything else class needs
public:
void changeLabel();
};
感謝您的快速回復 – Jaws
你只需要Form1以有窗口2的參考。然後對按鈕的點擊處理程序中的標籤文本進行更改。詹姆斯提出form2提供公共職能來提供該服務是正確的方式。你真的不想使用計時器。你對這個不喜歡是正確的。 –