0

我有一个带有两个主窗口的应用程序,我想捕捉一个到另一个的事件。例如,在 button1_MouseClick 事件(按钮 1 位于 Form1 上)中,我想将文本更改为 label1(其中 label1 在 form2 上)。这在 qt c++ 中是否可行,如果可以,如何?你能发布一些代码片段吗?

PS 我已经使用计时器和全局布尔值实现了我想要的,但我不喜欢那样

谢谢

4

1 回答 1

2

我将在表格 2 的类中有一个公共函数,调用它时会更改标签。然后将 button1_MouseClick 事件连接到表单 1 类中的私有函数,该函数调用表单 2 的公共函数。

沿着这条线也许:

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 回答