0

2 つのメイン ウィンドウを持つアプリケーションがあり、1 つのイベントから別のウィンドウへイベントをキャッチしたいと考えています。たとえば、button1_MouseClick イベント (ボタン 1 が Form1 にある場所) で、テキストを label1 (label1 が form2 にある場所) に変更したいと考えています。それは qt c++ で可能ですか? はいの場合、どのように? コードスニペットを投稿していただけますか?

PSタイマーとグローバルブール値を使用して目的を達成しましたが、それは好きではありません

ありがとうございました

4

1 に答える 1

2

フォーム2のクラス内にパブリック関数があり、呼び出されるとラベルが変更されます。次に、button1_MouseClickイベントを、フォーム2のパブリック関数を呼び出すフォーム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();
};
于 2012-08-31T11:07:17.393 に答える