需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网,轻量型云服务器低至112元/年,新用户首次下单享超低折扣。
目录
一、LCD Number(LCD显示器)
一个倒计时程序
二、ProgressBar(进度条)
1、创建一个进度条,100ms进度增加1
2、使用styleSheet修改进度条的颜色
三、Calendar Widget(日历)
当选中日期改变时,打印当前日期
一、LCD Number(LCD显示器)
核心属性:
属性 | 说明 |
intValue | 获取int类型的数值 |
value | 获取double类型的数值 它和intValue是联动的,例如给value设置为1.5,那么intValue就是2(四舍五入) 设置value和intValue的方法名字为display,而不是setValue和setIntValue |
digitCount | 显示几位数字 |
mode | 让数字按几进制显示: 1、QLCDNumber::Dec:十进制显示 2、QLCDNumber::Hex:十六进制显示 3、QLCDNumber::Bin: 二进制显示 4、QLCDNumber::Oct: 八进制显示 只有十进制才能显示小数部分 |
segmentStyle | 设置显示风格。 1、QLCDNumber::Flat:让数字显示在一个平面上 2、QLCDNumber::Outline:数字具有清晰的轮廓和阴影效果 3、QLCDNumber::Filled:数字被填充颜色并与背景区分开。 |
smallDecimalPoint | 让小数点显得比较小 |
一个倒计时程序
想要实现每秒的倒计时,就需要一个定时器,C++的boost库中提供了定时器,Qt也自带了定时器QTimer(结合了信号槽机制)
通过QTimer这个类创建出来的对象,就会定时产生一个timeout信号。
可以通过start方法来开启定时器,并且在参数中设定触发timeout的周期。结合connect,把这个timeout信号绑定到需要的槽函数中,就可以执行逻辑,修改LCDNumber中的数字。
注意:
1、Widget的构造函数别加sleep!!!会影响GUI界面的构造
2、Qt为了保证修改GUI界面的过程是安全的,禁止其他线程修改GUI界面,所有修改界面的行为,必须在主函数中进行。(默认情况下,槽函数都是由主线程进行调用的,在槽函数中修改界面是可以的)
二、ProgressBar(进度条)
核心属性:
属性 | 说明 |
minimum | 进度条最小值 |
maximum | 进度条最大值 |
value | 进度条当前值 |
alignment | 进度值文本(24%)在进度条中的对齐方式 1、Qt::AlignLeft:左对齐 2、Qt::AlignRight:右对齐 3、Qt::AlignCenter:居中对齐 4、Qt::AlignJustify:两端对齐 |
textVisible | 进度条的数字是否可见 |
orientation | 进度条的方向是水平还是垂直 |
invertAppearance | 是否朝方向增长进度 |
textDirection | 进度值文本的朝向 |
format | 展示的数字格式: 1、%p%: 表示进度的百分比(0-100) 2、%v: 表示当前进度的数值 (0-100) 3、%m:表示剩余时间 (以毫秒为单位) 4、%t: 表示总时间 (以毫秒为单位) |
1、创建一个进度条,100ms进度增加1
2、使用styleSheet修改进度条的颜色
QProgressBar也是QWidget的子类,因此可以使用styleSheet通过样式来修改进度条的颜色。
右键ui中的进度条控件->改变样式表
进度条的进度按照实际任务耗时时间进度来设定。使用时需要搭配定时器使用。
三、Calendar Widget(日历)
核心属性:
属性 | 说明 |
selectDate | 当前选中的日期 |
minimumDate | 最小日期 |
maxmumDate | 最大日期 |
firstDayOfWeek | 每周的第一天是周几(日历的第一列是周几) |
gridVisible | 是否显示表格的边框 |
selectionMode | 是否允许选择日期 |
navigationBarVisible | 日历上方标题是否显示 |
horizontalHeaderFormat | 日历上方标题显示的日期格式(水平标题格式) |
verticalHeaderFormat | 日历第一列显示的内容格式(垂直标题格式) |
dateEditEnabled | 是否允许日期被编辑 |
重要信号:
信号 | 说明 |
selectionChanged() | 当选中的日期发生改变时发出。 |
activated(const QDate&) | 当双击一个有效的日期或按下回车键发出。形参是QDate类型,保存了选中的日期。 |
currentPageChanged(int, int) | 当年份月份改变发出,形参表示改变后的新年份和月份。 |