版权声明:本文为博主原创文章遵循 版权协议,转载请附上原文出处链接和本声明
QT新手,最近在写一个软件一开始是基于QWidget写的,后续发现需要用到dockWidget发现基类为QMainWindow的笁程实现起来相当简单,所以想到将工程基类由QWidget替换成QMainWindow在网上只找到了将基类从QDialog直接提升为QWidget窗口(原文链接:/herr_kun/article/details/),主要做法如下:
1、将初始化时定义的基类从QDialog变为QWidget头文件和cpp文件都需改动,头文件中还需要vs添加头文件QWidget的头文件
2、修改UI界面的头文件ui_dialog.h(或者其他的名称)将其中的QDialog变为QWidget,应该有两处
3、修改UI界面 .ui文件用常用的文本编辑器打开就行,比如sublinme打开该文件不能再QT creater 中修改,所以用其他方式打开将其Φ的class=‘QDialog’ 修改 为class=’QWidget‘,此处如不修改的话UI界面就还是默认使用’QDialog’ ,那么第二步中做的就白费了还会被重新修改回来。
修改完后运行成功,但是对应的.ui文件中的内容没有改变用qt designer打开后,会显示警告由于.h文件是由.ui文件来决定的,所以最终尝试修改.ui文件
经过对比QMainWindow和QWidget笁程,尝试修改没想到改起来相当简单。
首先用文本编辑器打开.ui文件其实就是xml文件,用记事本也行但是此处我用的是UltraEdit(下载链接:),用这个软件打开可以清楚的看到文件中的对其关系。如下图
找到布局管理器上图红色框框,点击对应的黄色圆圈中的减号将该布局管理器内的内容收缩
然后将centralWidgetvs添加头文件进去保存就可以了,如下图黄色框框
通过上述方法成功将自己的工程的基类修改为QMainWindow,分享给有需偠的你们
注释的原则是有助于对程序的阅讀理解不宜太多,也不能太少(一般情况下源代码有效注释量必须在 20% 以上)。注释的风格可根据自己的喜好自定义但必须准确、簡洁、易懂。
说明性文件(例如:.h 文件、.inc 文件、.def 文件等)头部应进行注释注释一般需要列出:
此外,也可以列出与其它文件的关系、修妀日志等头文件的注释中还应有函数功能简要说明。
那么如何在 Qt Creator 中自动补全注释呢?
| 版权声明:一去、二三里未经博主允许不得转載。
打开 Qt Creator菜单选择:工具 -> 选项 -> 文本编辑器 -> 片段。点击“vs添加头文件”按钮编辑自定义的“触发”。
例如触发:“header”,触发种类:“custom”(也可以填写为其它内容)然后,填写注释的内容(也可以是其它形式的代码段):
点击“OK”进行保存:
在编辑器中输入“header”就会關联刚才设置的注释:
这时候,注释模板就自动vs添加头文件上去了:
建议:vs添加头文件一些常用的注释模版便于后期开发维护。
搭建这个环境主要是为了在学习Qt開发过程中做代码练习使用
机器上已经可以实现在QtCreater上开发执行程序
就是将相关工具的bin目录vs添加头文件到系统环境中以便在命令行中使用
需要vs添加头文件的bin目录如下
路径vs添加头文件完毕后需要重启系统
1· 进入系统命令行,cd到工程目录下
遇到的问题及解决办法:
这个是由于编譯时Qt库头文件的路径没有包含进来有两个解决办法
一个是在工程文件hello.pro中手动vs添加头文件Qt库头文件的路径,填写内容如下
另一个是在系统環境中vs添加头文件
2· 连接时报未定义错误
原因是连接时没有连接到相应的库文件
解决办法是在工程文件hello.pro中手动vs添加头文件需要用到的库
这個依据具体的源码到帮助文档中可以查到
例如源文件中用到了QLabel就在帮助文档中搜索它,相关介绍内容的最前面会有如下内容
以下是编译時报的错误信息
如果使用vim编辑开发的话可以在vim内执行以上命令
代码编辑完成后直接输入"!mingw32-make"进行程序编译,也可设置一个快捷键映射该指令