我是Qt的新手。
我开始使用新的Qt4 GUI应用程序。
使用设计器,我创建了一个如下菜单:
File
- Exit
如何获得与菜单项关联的操作?
我发现了一些名为“信号和插槽编辑器”但却不知道如何使用它。
答案 0 :(得分:47)
选择信号插槽编辑器后,单击绿色加号。它将为您提供4个字段来填写。对于发件人,您可以选择创建信号的内容。例如,ActionExit可能是您为退出菜单项创建的名称。信号可能会被点击()。接收器通常是您创建的具有所有方法的类。插槽是您在该类中创建的要执行的方法。例如:
actionExit clicked() <nameOfClass> exitGame()
希望这有帮助。
答案 1 :(得分:41)
我设法以一种似乎更容易的方式做到了这一点。在Qt Creator Action Editor窗口中,我看到了我单击的菜单项的条目。我单击该条目并选择“转到插槽...”然后从弹出窗口中选择triggered()并单击“确定”。 Qt Creator跳转到我刚添加的代码....我在那里放了一个qDebug语句,它有效!
答案 2 :(得分:4)
转到插槽编辑器,然后单击bottem左侧的“操作编辑器”选项卡。列出了所有菜单操作。
右键单击 - &gt;转到Slot提供了一个插槽功能。
答案 3 :(得分:0)
在这个很棒的论坛上,我已经看到2个可能是3个这样的问题,但是每个问题都很令人困惑,不需要去告诉信号/插槽创建者刚刚获得Qt Designer并按照以下步骤进行操作
1.add菜单和菜单栏上的操作,并在mainwindow.h文件的插槽中添加任何功能,如下所示
private slots:
void help();
2。接下来在您的mainwindow.cpp中添加以下代码。
connect(ui->actionmyactions, SIGNAL(triggered()), this, SLOT(help()));
3。也可以使用以下代码对菜单进行相同操作:
connect(ui->menuHelp, SIGNAL(aboutToShow()), this, SLOT(help()));
4。无需按照以下说明进入Qt Designer,即可获得所需的结果。
在mainwindow.h中声明您的操作,如下所示
QAction *myaction;
,然后在您的mainwindow.cpp中添加以下代码
myaction = ui->mainToolBar->addAction("help");
connect(myaction, SIGNAL(triggered()), this, SLOT(help()));