Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/EmptyTag/127.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 在Visual Studio的Qt项目中添加按钮单击处理程序_C++_Windows_Qt - Fatal编程技术网

C++ 在Visual Studio的Qt项目中添加按钮单击处理程序

C++ 在Visual Studio的Qt项目中添加按钮单击处理程序,c++,windows,qt,C++,Windows,Qt,我有qtsdk和visualstudioqt插件在VS2008中工作。我使用主窗口类MainWindow创建了Qt UI项目。双击mainwindow.ui打开Qt设计器。然后我在窗口中添加了按钮,并称之为按钮。在信号插槽模式下,我设法将按钮的点击信号与主窗口按钮的点击插槽连接起来。信号/插槽编辑器如下所示: Sender pushButton Signal clicked() Receiver MainWindowClass Slot ButtonClicked() 发送器按钮

我有qtsdk和visualstudioqt插件在VS2008中工作。我使用主窗口类MainWindow创建了Qt UI项目。双击mainwindow.ui打开Qt设计器。然后我在窗口中添加了按钮,并称之为按钮。在信号插槽模式下,我设法将按钮的点击信号与主窗口按钮的点击插槽连接起来。信号/插槽编辑器如下所示:

Sender pushButton Signal clicked() Receiver MainWindowClass Slot ButtonClicked() 发送器按钮 点击信号() 接收机主窗口类 插槽按钮单击() mainwindow.ui文件已更改,反映了此新信息。但是,mainwindow.cpp和mainwindow.h保持不变。我希望看到我可以添加自己代码的地方。因此,我手动添加了此代码:

// mainwindow.h ... protected slots: void ButtonClicked(); // mainwindow.cpp void MainWindow::ButtonClicked() { QMessageBox msgBox; msgBox.setText("Clicked"); msgBox.exec(); } //主窗口 ... 受保护插槽: void按钮单击(); //mainwindow.cpp void主窗口::ButtonClicked() { QMessageBox-msgBox; msgBox.setText(“单击”); msgBox.exec(); }
这是可行的,但我想知道这是否是正确的方法。插槽声明和实现应该手动添加,还是我遗漏了什么?

如果使用信号/插槽编辑器,则必须手动添加这些代码。如果双击designer中的按钮,旧的Qt加载项将自动添加这些。现在Qt设计器是一个独立的应用程序。双击是不可能的

你也可以使用。使用自动连接,您不需要将信号与插槽连接。具有特殊命名约定的函数,自动调用。像“确定”按钮上的
,单击了