C++ Gui Qt4 第二章
这一章需要使用在控制台使用qmake
使用qmake的时候要先配置qmake的环境变量
找到qmake所在的目录,添加环境变量即可
在使用的时候要先跳转到源文件所在的目录
课本中说qmake可以自动检测到用户界面文件,并可以生成适当规则的makefile规则来调用Qt的用户界面编辑器(uic)
uic工具将会将ui文件转换成C++并且存储在我们所指定的文件名(*.h)中,也就是自动生成一个头文件,该头文件包含了函数实现
然而,在实际的使用中,通过命令行:
qmake -project
qmake
并不能得到对应的头文件,通过查询我发现使用nmake可以自动生成对应的头文件
但是,后面发现,在我删掉工程文件,生成的头文件和已经生成的makefile文件等之后,再一次使用相同的命令就无法生成对应的头文件
后面发现可以直接使用uic生成对应的文件,命令行如下:
uic <ui文件名> <头文件名>
在得到所有对应的文件后,使用Qt Creator打开资源目录,在项目窗口右键该文件夹,执行qmake,会自动加载其他的.cpp文件和.h文件
我执行qmake后发现一部分没有被自动添加,这是因为.pro文件中没有声明这部分文件,打开工程文件,在下面添加相应的文件名,在执行qmake就可以了
构建项目过程中,报错Link:不能解析的XXX,这是由于项目源文件和构建目录不是同一目录
点击项目,勾选Shadow build复选框,将构建目录改成源文件所在的目录,再次构建执行就可以了
程序构建的基本思路是:
- 使用Qt Designator设计一个ui,保存
- 使用uic生成相应的头文件,头文件中的类名就是Ui_顶级对象名
- 创建一个新的类,继承自uic生成的头文件中的类,在构造函数中调用setupUi(this)函数,初始化窗口内容
- 使用Qt Creator构建并运行程序
C++ Gui Qt4 第二章的更多相关文章
- C++ GUI Qt4 编程 (第二版)
[加拿大]JasminBlanchette [英]MarkSummerfield . 电子工业 2008. 前几天的问题多是因为版本不兼容的问题. QT本身Q4 Q5就有版本问题,然后集成到VS08 ...
- 学习opencv中文版教程——第二章
学习opencv中文版教程——第二章 所有案例,跑起来~~~然而并没有都跑起来...我只把我能跑的都尽量跑了,毕竟看书还是很生硬,能运行能出结果,才比较好. 越着急,心越慌,越是着急,越要慢,越是陌生 ...
- 第二章 Qt常用工具的介绍
第二章 Qt常用工具的介绍 (1)No.1 qmake 相信编写过Makefile的开发人员,随着工程中源码的级数递增和以类型.功能.模块组织源码的子目录的增多,都不愿意重复机械地手工编写这个工程管理 ...
- 第二章排错的工具:调试器Windbg(上)
感谢博主 http://book.51cto.com/art/200711/59731.htm <Windows用户态程序高效排错>第二章主要介绍用户态调试相关的知识和工具.本文主要讲了排 ...
- <自动化测试方案_2>第二章、自动化测试是什么?(What)
第二章.自动化测试是什么?(What) 自动化测试是相对于手工测试而言:通过脚本自动去执行测试用例,从而代替人完成测试工作. 自动化测试相对手工测试优缺点 测试方式 优点 缺点 手工测试 1,完整的对 ...
- C++ GUI Qt4编程(10)-3.4spreadsheet
1. C++ GUI Qt4编程第三章,增加spreadsheet. 2. spreadsheet.h /**/ #ifndef SPREADSHEET_H #define SPREADSHEET_H ...
- C++ GUI Qt4编程(09)-3.3spreadsheet-toolbar
1. C++ GUI Qt4编程第三章,增加工具栏.状态栏和快捷键. 2. mainwindow.h /**/ #ifndef MAINWINDOW_H #define MAINWINDOW_H #i ...
- C++ GUI Qt4编程(08)-3.2spreadsheet-resource
1. C++ GUI Qt4编程第三章,图片使用资源机制法. 2. 步骤: 2-1. 在resource文件夹下,新建images文件,存放图片. 2-2. 新建spreadsheet.qrc文件,并 ...
- C++ GUI Qt4编程(07)-3.1menu
1. C++ GUI Qt4编程第三章,添加menu菜单. 2. mainwindow.h #ifndef MAINWINDOW_H #define MAINWINDOW_H #include < ...
- C++ GUI Qt4编程(03)-1.3layout
1. 根据C++ GUI Qt4编程(第二版)整理2. 系统:centos7: Qt版本:5.5.13. 程序:layout.cpp #include <QApplication> #i ...
随机推荐
- C# 如何部分加载“超大”解决方案中的部分项目
在有的特有的项目环境下,团队会将所有的项目使用同一个解决方案进行管理.这种方式方面了管理,但是却会导致解决方案变得非常庞大,导致加载时间过长.那么,如何部分加载解决方案中的部分项目呢?就让我们来借用微 ...
- 基于 Ubuntu 服务器配置原生的 Socks5 网关代理服务器
常见的代理协议有 http.https.socks4/5 这三种,http协议的代理搭建方案最简单,但是http代理无法访问https网站,https代理无法实现调用远端dns,所以我个人推荐使用Sc ...
- Java堆外缓存(一个很有意思的应用)
我们在开发过程中会遇到这样的场景:就是一个服务的各项 JVM 的配置都比较合理的情况下,它的 GC 情况还是不容乐观.分析之后发现有 2 个对象特别巨大,占了总存活堆内存的 90%以上.其中第 1 大 ...
- 关于Vue2.x与Es6一些特性
关于Vue2.x与Es6一些特性 Vue的定位,就是快速开发. 这些特性,我没有过于熟练,导致写的代码质量不高. 过滤器 <template> <div> {{title | ...
- P9_组件-swiper和swiper-item的基本用法
swiper 和 swiper-item 组件的基本使用 实现如图的轮播图效果: swiper 组件的常用属性 list.wxml <swiper class="swiper-cont ...
- nodejs 环境变量配置
1.下载 下载地址: https://nodejs.org/zh-cn/download/ 2.安装 安装一直下一步即可,建议安装路径不要包含中文 3.环境变量配置 1)右键[我的电脑],点击[属性] ...
- 1 .NET Core笔试题
1.说说显示实现接口和隐式实现接口的区别. 2.说说file访问修饰的作用. 3.说说什么是原始字符串. 4.C#10 中struct有什么改进? 5.说说C#10中Lambda表达式的新特点. 6. ...
- javaEE(单元测试、反射、动态代理、xml)
单元测试 最小的功能单元编写测试代码,java针对方法,检查方法的正确性 JUnit单元测试框架 @Test注解 public class A { @Test public void a(){ ... ...
- 安卓逆向.5 xposed 替换方法-(实战贪吃蛇)
代码剖析 调用成功方法 获取类 方法写入 实战例子(贪吃蛇)
- 这些 JavaScript 笔试题你能答对几道?
收藏 javascript-questions 这个仓库很久了,趁着周末来锻炼下自己的 JS 基础水平 因为逐渐也在承担一些面试工作,顺便摘录一些个人觉得比较适合面试的题目和方向 事件流(捕获.冒泡) ...