qt中的基类:
1.Qwidget:最基础的窗口类,qt里面能看到的东西的积累
2.QmainWindow:继承Qwidget类,带菜单栏,工具栏,状态栏。
QDialog:对话框,没有最大化的窗口;
资源的引用:
- 绝对路径:运行时相对项目生成路径(“”文件夹/文件名“)
- 相对路径:
- 资源文件:在qt项目中创建文件资源(“:/文件夹/文件名”)
区别:
- 相对路径、绝对路径在项目打包发布的时候,需要同项目一起发布,外部可以见;资源文件在编译的时候会将文件编译进exe中,不需要放置在发布的时候放置在发布文件路径下,外部不可以变;
- 在新版本的时候,如果需要图片的变动,相对路径、绝对路径需要更行路径下的资源就可以了,而资源文件则需要把整个exe都替换掉;
- 如果项目中会用到一些比较大的资源,会导致exe变大;相对路径、绝对路径中的exe比较小;
程序的发布
第一步:找到文件E:\qt\5.13.2\msvc2017_64\bin(qt的安装路径)中的windeployqt.exe(用来打包qt文件的);
第二步:在路径中输入cmd打开命令行,输入windeployqt.exe 后面跟要打包的可执行文件路径;
注意事项
1,在qt中,只要绑定了父控件,那么在父控件资源被释放的时候,会依次释放子控件资源;在控件添加的同时,会在对应的控件之间建立父子控件关系;建立父子关系后不需要关注子控件的资源释放问题 ;
如果当前对象在堆上申请,且没有与其他对象绑定父子关系,那么需要手动释放资源;
2.继承qwidget的组件都可以通过show将窗口显示出来。默认情况下没有建立父子关系,显示的都是顶层窗口
qt常用的api函数
- addwidget()方法用于向布局中添加控件;
- addLayout()方法用于布局中添加子布局;
- 一个Qt主窗口应用程序必须有一个中心窗口部件(Central Widget)。当你采用Qt Designer创建主窗口时,默认情况下,系统已经为你创建了一个中心窗口部件,它是子类化QWidget的。 结合代码可以方便的设置中心窗口部件,可以调用主窗口类的setCentralWidget()方法;
- 如果继承与Qwidget,设置主窗口用setlayout();
- <QDebug> 控制台输出,qt调试工具
- 设置窗口的标题:w.setWindowTitle("hellowWorld");
- 设置窗口的固定大小:w.setFilxSize(800,600);
- 同时设置窗口的位置和大小:w.setGeometry(int x,int y,int w,int h);
- move:移动窗口到父窗口的某个坐标
- resize :重新设置窗口的大小
QT creator最常用的13个快捷键
alt +enter
// 自动创建类的定义F1
// 查看帮助,文档F2
// 快速到变量声明Shift + F2
// 函数的声明和定义之间快速切换F4
// 在 cpp 和 h 文件切换Ctrl +M
创建书签,Ctrl + .
切换书签Alt + M
打开书签栏。Ctrl + Enter
换行 ,Ctrl +Shift + Enter
到上一行添加Ctrl + ]
,Ctrl+[
跳到程序段结尾 或者开头Ctrl + I
自动缩进当前行Shift+delete
剪切当前行,可以当做删除用Ctrl + R
运行程序Ctrl + B
Build 项Ctrl + /
注释当前行 或者选中的区域