在Qt中,要将一个QWidget(包括QMainWindow)添加到另一个QWidget中,可以使用setCentralWidget()方法。
下面是一个简单的示例代码,演示如何将一个QWidget添加到QMainWindow中:
#include <QMainWindow>#include <QWidget>int main(int argc, char *argv[]){ QApplication app(argc, argv) // 创建一个QMainWindow对象
QMainWindow *mainWindow = new QMainWindow() // 创建一个QWidget对象
QWidget *myWidget = new QWidget(mainWindow) // 将myWidget设置为mainWindow的中心窗口部件
mainWindow->setCentralWidget(myWidget) // 显示主窗口
mainWindow->show() return app.exec()
}
在这个示例中,我们首先创建了一个QMainWindow对象,然后创建了一个QWidget对象,并将它的父对象设置为QMainWindow。接着,我们使用setCentralWidget()方法将QWidget对象设置为QMainWindow的中心窗口部件。最后,我们显示了QMainWindow。
通过这种方法,我们就可以将一个QWidget添加到QMainWindow中。
在使用Qt创建桌面程序的时候,经常会使用Qt designer来设计程序界面。而Qt窗口类中,QMenuBar和QToolBar中并没有按钮或选项类的控件,取而代之的是要向这些控件中添加QAction。这一个个Action构成了类似按钮似的“控件”。
网上很多在源代码中添加QAction的方法。实际上,在Qt designer中也可以方便的想菜单栏和工具栏添加action。
方法如下:
1、打开动作编辑器。
如果找不到动作编辑器,请点击Qt designer的菜单栏的“视图”-“动作编辑器”。
2、在动作编辑器窗口添加新的动作
3、拖动该动作到菜单栏或状态栏
大功告成
如果想为改Action设置响应函数,可以将该Action的Triggered()信号与想要的槽函数相连。
如
//连接信号和槽
connect(ui.actionInputFlightData,SIGNAL(triggered()),this,SLOT(testTra()))
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)