踩坑总结:安装使用QT
QT:QT SDK,QT creator/IDE 项目分类:分为widget界面,console控制台,quick新界面(QML与C++解耦)文件结构:widget:项目主配置.pro,类(头文件.h,源文件.cpp,界面.ui)quick: UIQT界面类/对象:窗体、按钮;要include <对象>才能使用按钮槽slots(方法),信号signal...
- QT:QT SDK,QT creator/IDE
- 项目
分类:分为widget界面,console控制台,quick新界面(QML与C++解耦)
文件结构:
widget:项目主配置.pro,类(头文件.h,源文件.cpp,界面.ui)
quick:
- UI
QT界面类/对象:窗体、按钮;要include <对象>才能使用
按钮槽slots(方法),信号signals(方法):跳转,::调用类方法
- 面向对象分析:
窗口对象,属性是窗口内的部件;
通过指针将部件类作为属性,只需前置声明,不需完整include,在源文件中include即可。
在源文件中实现部件类
- 跳转方法
推荐:构造方法内connect信号+槽:只需声明方法,最后在构造方法中connect
(面向方法,方法名自由,手动connect)
右键按钮-转到槽:点击即调用方法,方法名即点击名
(面向点击,方法名安装qt规范,qt自动connect信号)
下方+-(不会生成代码,无法调试)
设计模式上方按钮(无法精确指定,如菜单栏的子项)
连接/跳转:按钮类,发射信号,接受类,执行槽方法
menu跳转dialog:action,信号trigger,槽,.h声明父类QDialog,.cpp new子类MyDialog(多继承QDialog,Ui::)
.h中必须有此属性,.cpp实例化(继承Ui::)原因?button跳转dialog无此要求。
User Interface Compiler (uic):reads the .ui file,creates a corresponding C++ header file, ui_notepad.h
- code
QT技巧
代码补齐:ctrl + 空格键——改为alt + /
帮助文档:F1,导入官方文档.qch
C++知识
创建对象方式:Test test1(); Test *test1 = new Test();(new返回的是指针)
内存分配方式:
1.静态分配:全局变量、static变量,程序整个运行期间
2.栈:函数内局部变量,函数结束后自动回收,分配内存有限,Test test1();
3.堆:自己malloc或new任意大小内存,自己free或delete释放
指针*,引用&
读取xml:相对路径、绝对路径;元素遍历
制作安装包:release exe,msvc windeployqt.exe自动找dll(windeployqt.exe D:\exmple.exe)
网络编程模块,.pro:QT+=模块名,如network
ssh 上传服务器
按URL下载
安装包;版本控制文件,用户配置文件
- build:debug,release
制作安装包:
1、自动收集release依赖:msvc的windeployqt.exe
windeployqt --release --qml --qmldir D:\src\qml\huorong\源码路径 huorong.exe
*若使用qt installer,需按照规定的文件结构。看example,模仿创建项目结构,依赖放入项目目录packages\..\data。
2、创建安装包:NINS或者binarycreator.exe
可以通过NINS、NINS edit来创建安装包,需要licence.txt和所有dll。
binarycreator -c config/config.xml -p packages [生成的安装程序exe文件名] -v
注:设置环境变量bin,或者指定制定exe路径
- dll创建、调用
创建C++库,(qglobal,export/import),build构建h, lib, dll三个文件
隐式调用(.h, .dll, .lib):指定三个文件的位置(include h,link lib;运行根目录dll)显式调用(.h, .dll, 缺.lib)
参考:
https://blog.csdn.net/naibozhuan3744/article/details/78926110
https://blog.csdn.net/u013015629/article/details/54405778
https://wiki.qt.io/How_to_create_a_library_with_Qt_and_use_it_in_an_application
- 软件更新功能实现
版本配置,下载读取,安装包/补丁
补丁:WiX Toolset静默安装
配置文件:xml,ini
网络传输协议:http,安全ssh,tcp,udp
软件更新策略:覆盖软件,保留用户配置文件
参考:https://blog.csdn.net/song_0962/article/details/2508021
https://blog.csdn.net/zhaori/article/details/7444940
- 采坑总结:
问题:button.setText(汉字)奇数个编译报错“常量中有换行符”。
使用notepad设置UTF-8-BOM编码。
问题:编译不报错,界面显示乱码。
setText(u8"汉字")
参考:
http://www.qter.org/portal.php?mod=view&aid=29&page=3
https://blog.csdn.net/qq_32768743/article/details/80871697
https://blog.csdn.net/liukang325/article/details/52297036
http://blog.sina.com.cn/s/blog_a6fb6cc90101fer8.html
https://blog.csdn.net/sinat_21107433/article/details/80150575
https://blog.csdn.net/wing_7/article/details/79391820
https://stackoverflow.com/questions/205830/windows-automatic-software-updates
更多推荐
所有评论(0)