3

我终于要完成我的学校项目,并认为在我的下拉菜单中有一个退出选项会很好,但是,无论我尝试什么,我都无法让它工作。如果您可以在业余时间看看它,我将非常感激(或您可能有的任何建议)

void MainWindow::on_actionExit_triggered()
{
    connect(this,SIGNAL(triggered()),MainWindow,SLOT(close()));
} 

每次我尝试调试它时,它都会给出以下错误消息:

错误:“,”标记之前的预期主表达式

4

1 回答 1

12
  1. 您需要将对象指针传递给connect函数,而不是类名。您应该替换MainWindowthis. 它将修复编译错误。

  2. connect语句放在类构造函数中会更明智。connect如果您希望它在用户按下菜单项的任何时候工作,您需要进行at 初始化。

  3. on_actionExit_triggered具有特殊的名称形式。一旦你用这样的名字创建了一个槽,Qt 会自动将它连接到动作的triggered槽上actionExit(更多信息参见自动连接。)。所以根本不需要connect声明。

  4. on_actionExit_triggered当用户按下菜单项时,将调用该插槽。当然,您需要在其中添加一些实现。例如:

    void MainWindow::on_actionExit_triggered() {
        QApplication::quit();
    }
    
于 2013-08-02T20:16:36.977 回答