Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.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
Qt调用另一个Ui_Qt_Visual Studio 2008_Qt Designer_Qmainwindow - Fatal编程技术网

Qt调用另一个Ui

Qt调用另一个Ui,qt,visual-studio-2008,qt-designer,qmainwindow,Qt,Visual Studio 2008,Qt Designer,Qmainwindow,我在我的项目中使用Qt Designer创建了2*.ui,其中一个是主屏幕,另一个是对话框小部件。对话框小部件由主屏幕中的一个函数调用 如何连接主窗口中的函数来调用对话框小部件 e、 g.如果我点击主窗口菜单中的[About>Author],我应该能够调用对话框小部件 任何帮助都将不胜感激 谢谢。这取决于您将对话框指针放在何处。例如,您可以在主窗口上创建一些信号,并将其连接到dialog show()插槽(如果需要,可以连接到exec())。 或者,如果将对话框指针保留在主窗口中,则可以直接将其

我在我的项目中使用Qt Designer创建了2*.ui,其中一个是主屏幕,另一个是对话框小部件。对话框小部件由主屏幕中的一个函数调用

如何连接主窗口中的函数来调用对话框小部件

e、 g.如果我点击主窗口菜单中的[About>Author],我应该能够调用对话框小部件

任何帮助都将不胜感激


谢谢。

这取决于您将对话框指针放在何处。例如,您可以在主窗口上创建一些信号,并将其连接到dialog show()插槽(如果需要,可以连接到exec())。 或者,如果将对话框指针保留在主窗口中,则可以直接将其与show/exec方法一起使用


至于About->Author菜单:为此,您应该创建QAction并将其添加到菜单中。QAction已触发()信号,您可以将其连接到对话框的exec/show插槽。

谢谢您的回复。我很困惑,因为有这个从.ui文件生成的“ui_xxx.h”,还有“xxx.h”和“xxx.cpp”。我应该在哪里声明我的对话框小部件show()插槽?我在哪里声明我的主窗口信号()以连接到此对话框小部件插槽()?QDialog已经有show/exec插槽,因此您不需要声明它们。如果您需要在主窗口上声明signal,那么您应该在实现ui的MainWindow类上进行声明(我不知道您是如何进行声明的,但我想这是通过setupUi进行的),并从ui生成的类继承。