Qt环境中QMainWindow表示主串口的意思。之前一直使用单独的QWidget。最近做一个基于Qt主窗口的项目。其实Qt的主串口框架有点类似于MFC中的单文档工程。个人觉得主窗口有以下几个好处。
1、主窗口工程看上去比较大气。
原谅我一直喜欢大气的主界面。
2、特别赞的Dock功能。
Qt自带的一个主窗口的DockWidget例程
3、各种自定义导航栏,工具栏。不怕你内容多的没地方放。
说了这么多好处。现在说一下使用主窗口需要注意点的地方。
当时做项目的时候,用布局用多了。所以在用主窗口工程的时候遇到了点问题,就是使用自动布局会提示出错。具体原因是,主窗口其实是要先确定一个中心widget才可以去是用布局的。
上面的是QT的主窗口布局图
中间那个Central Widget就是中间widget。
void setCentralWidget(QWidget *widget);这个函数是用来设置中间部件的。指定一个中间部件后。就可以使用自动布局了。
中间部件可以随意指定。比如笔者的中间部件是一个显示图像的Widget的子类。直接放进去就可以。如果实在没有什么指定的中间部件,又想去用自动布局。那就申请一个Widget好了。
比如 可以这样子。
void setCentralWidget(new QWidget );
好了 ,搞定。
但是,笔者后来就真心没有去用自动布局了。原因是,这个面板上都是Dock模式。用自动布局去固定反而不美。