介绍Qt
C++图形用户界面应用程序开发框架、编程语言:C++、特点:
优良的跨平台特性,面向对象、丰富的类
Qt的三大护法
QApplication 控制整个程序执行流程 exec
QWidget:界面以及界面组件的父类
QLayout:布局管理,摆放的位置 绝对布局 move
QT的核心机制—信号和槽
作用:就是实现对象与对象之间的通信
打印追踪:
QDebug 头文件
qDebug()<<输出的内容;
下拉框实现:QComboBox:
登录界面绘制:
信号和槽的绑定:connect(发送者,SIGNAL(信号), 接受者, SLOT(槽函数));
自定义的槽函数:
QLabel
QLineEdit--------- 密文显示 最大长度的设置; 编辑框限制输入的文本内容
QPushButon
QTextEdit
QComboBox QStringList addItems
QWidget
QMessageBox
QHBoxLayout
QVBoxLayout
QGridLayout 网格布局 例如: 九宫格的计算机
QFormLayout 表单布局 例如:登录、注册页面(左右两列的)
QString 类 数值类型和 QString之间的转换 QString::number
QDebug
定时器的使用---案例:倒计时 或者实时显示系统时间
QTimer timeout的信号 启动定时器 start(1000) stop();
每过1s,发送timeout信号,从而触发槽函数
QLCDNumber display显示
图片的显示—案例:静图和动图的显示、按钮+整个窗口背景图片的设置
显示静图:
QLabel来显示图片
QPushBtton 点击显示图片信息到标签上
动图显示:
QMovie这个类, setFileName start stop
设置背景图片:存在的问题:无法实现伸缩---事件
界面切换:
使用窗口管理—》发信号的方式实现界面切换
信号能否重载: QComboBox类里面有信号重载
槽函数也是可以重载的
信号和槽在设计参数的时候需要注意:
信号参数的个数>=槽函数的参数个数
关联的时候: 只要给参数类型就可以了!!!!(传参只需传参数类型)
实现记事本
使用UI的方式创建界面,QMainWindow 页面多了三个类对象:
QMenuBar、QToolBar、QStatusBar
实现步骤如下:
1>.给窗口中添加菜单栏、工具栏、状态栏
2>.给菜单栏添加菜单
3>.给菜单添加选项
4>.记事本添加文本区域
5>.设置状态栏显示信息
6>.给记事本设置标题
7>.连接 动作和处理函数
8>新建文件
分析如下:
如何知晓文本区域被修改呢? QTextEdit有一个信号
9>.打开文件