创建一个目录
file会遍历枚举该目录中所有的文件,这样做了就不用一创建就添加文件
报错要编译一下
编译过后才会出现这个头文件
运行
双击UI,clion打不开,看看下面这个配置
布局:
拉一个Lable、lineEdit、两个按钮
build一下
运行
主要用这几个布局
加弹簧
运行
给按钮改名字
改完后编译一下
生成的代码
连接信号和槽
下一步
给槽函数取名字
取了这个名字后,会自动把btnStart这个对象与clicked绑定
按住alt+enter转到实现槽函数
build一下
效果
这些零时文件可以删
自定义槽函数
新建的类没必要继承QWidget,继承这个就是一个窗体,只是没有show出来而已
所以继承QObject
构造函数
因为QObject有一个参数
所以我们的构造函数也要一个参数
引入一个宏
信号
为了方便再写一个类在同一个文件里(也可以分两个文件写)
加一个属性
槽函数
因为new的人的对象不能在按钮点击事件里调,所以把对象写到类里
人发送信号
人发送信号后,house调用槽函数
屏蔽调
build通过
槽函数重载
实现
槽函数和信号都重载了,所以要指定那个信号调那个槽函数
运行
去掉eat上的警告
cmake重构一下
去掉void上的警告
点击后会加一条注释
警告就没了
用自定义的窗口
在主目录下创建文件
运行,按钮都放在一起了
解决1(绝对布局)
效果
要这一个,垂直方向排列控件
可以给对象选择一种布局
我们今天给一个窗体固定一种布局
运行
结构体里加一个函数指针
槽函数
实现
点击按钮打开另一个窗体
setAttribute:点×会释放对象
打开一个新窗口,老窗口不可用(setEnabled)
作业:做一个计算器
改变lable的背景色:
lable右键
点一下计算器
在这里面可以添加css代码
保存写的样式,在.h下可以查看源码
新建
放两个控件
加一个边框
边框效果
给lable加一个边框
把文字改成右对齐
上面的框和下面的框的比例为1:9
盒子没有紧贴边沿
把外边距都变成0
效果
处理中间的部分
设置按钮大小
ctrl cv后,点击布局
效果