QT介绍
Qt是一个跨平台的 C++ 开发库,主要用来开发图形用户界面程序,当然也可以开发不带界面的命令行程序。
支持各种的操作系统, windows、Linux、MAC
丰富的API : 有250多个以上的类,并且类有做模块的划分,代码模块化程序高!
Qt是面向对象的框架,使用特殊的代码生成扩展(称为元对象编译器(Meta Object Compiler, moc))以及一些宏,Qt很容易扩展,并且允许真正地组件编程。
Q_OBJECT 宏
QT工程创建及文件说明
工程名不能出现中文
打印追踪
#include <QDebug>
qDebug()<<"";
QT的核心机制:信号和槽
实现对象与对象之间的通信
关键字:signals(信号)、slots(槽)
信号和槽是通过QObject对象的connect()和disconnect()方法来连接和断开的
案例
非UI实现步骤
引入头文件
在类的定义中增加对象的声明
在构造函数中进行实例化
运行观察界面设计是否合理并做调整
增加槽函数、实现业务
信号与槽函数的关联:connect函数
运行
UI实现步骤
拖拽需要的控件
修改每一个控件对象名称
保存UI
运行,并检查界面是否符合要求
按钮右键--转到槽--选择信号--槽函数中添加业务
运行
类总结
QTimer
是一个定时器类,可以用来定时执行某个任务
start():可以用来开启定时器,参数是毫秒数,表示多少毫秒后开始执行定时器任务
timeout():是QTime的一个信号,表示时间到了
stop():可以用来关闭定时器
QLabel
是一个标签类,可以用来显示文本或图片等内容
setText(QString):可以用来设置标签的文本内容,参数是QString类型的字符串
setPixmap(const QPixmap &) :用于将 QLabel 中显示的图像设置为指定的 QPixmap 对象
setScaledContents(true) :用于使 QLabel 中的图像自适应控件的大小。如果不设置这个方法,那么当 QLabel 大小小于图像大小时,图像会被裁剪
setMovie(QMovie *movie):将QMovie对象设置为QLabel的动画,并用start()和stop()函数控制动画的播放和暂停
QDateTime
是一个日期时间类,可以用来表示日期和时间
currentDateTime():可以获取当前日期时间
toString():可以将日期时间格式转换成字符串,可以指定字符串的格式。
QLCDNumber
是一个显示数字的控件,它可以用来显示整数或浮点数
display():是QLCDNumber的一个成员函数,用于设置QLCDNumber的显示值
QTime
是Qt中用来表示时间的类
addSec():是QTime的一个成员函数,用于给时间对象增加指定的秒数
toString():是QTime的一个成员函数,用于将时间对象转换为字符串,方便输出和显示
QPushButton
是一个按钮控件
clicked():是QPushButton的一个信号,用于表示按钮被点击的事件
setText():是QPushButton的一个成员函数,用于设置按钮的显示文本
text():是QPushButton的一个成员函数,用于获取按钮的显示文本
QPixmap
是 Qt 中的一个类,用于处理图像
load():用于从文件中加载图像数据,可以加载各种常见的图像格式,比如 PNG、JPEG、BMP 等
scaled():则用于缩放 QPixmap 对象的大小,可以按照指定的比例或者尺寸进行缩放
QMovie
Qt中的动画类,可以加载并播放GIF、AVI等动画文件
setFileName():设置动画文件名,然后用start()函数开始播放动画,用stop()函数停止播放动画
QProgressBar
Qt中的进度条控件,可以用来显示任务的进度
setRange():设置进度条的最小值和最大值
setValue():设置当前进度条的值
value():获取当前进度条的值
QMainWindow
是 Qt 程序中的一个主窗口类。它提供了一个应用程序的主窗口,其中包含一个菜单栏、工具栏和状态栏
setMenuBar():设置主窗口的菜单栏
addToolBar():向主窗口添加工具栏
setStatusBar():设置主窗口的状态栏
setCentralWidget():设置主窗口的中央部件
setWindowTitle():设置主窗口的标题
QMenuBar
是Qt程序中的一个类,它提供了一个菜单栏,通常位于应用程序的顶部
addMenu():添加一个菜单
QToolBar
是Qt程序中一个用于创建工具栏的类
addAction():向工具栏添加一个动作
addWidget():向工具栏添加一个部件(如QLabel)
QStatuBar
是Qt框架中的一个类,用于显示应用程序状态栏,可以添加显示文本、进度条、图标等组件
showMessage():在状态栏上显示一条消息
QMenu
是Qt框架中的一个类,用于创建弹出式菜单
setTitle():设置菜单的标题
addAction():向菜单添加一个动作
QAction
是 Qt 框架中的一个类,用于表示用户界面中的操作,例如菜单项、工具栏按钮、上下文菜单项等
setShortcut():设置快捷键
setIcon():设置图标
setStatusTip():设置状态提示信息
triggered():当动作被触发时发出信号
QTextEdit
是 Qt 库中的一个类,用于在图形用户界面(GUI)中显示和编辑多行文本
document():表示文本编辑器中的文本,返回QTextDocument对象
toPlainText():返回文本编辑器中的纯文本内容
setText():设置文本编辑器的文本内容
textChanged():当文本编辑器的内容发生改变时发出信号
clear():清除文本编辑器的内容
setFont():设置文本编辑器的字体
setCurrentFont():设置当前光标所在的位置的字体
setTextColor():设置文本颜色
QTextDocument
是一个 Qt 框架中用于处理文本的类
isModified():返回文档是否被修改
QMessageBox
是一个 Qt 框架中的对话框类,用于显示消息、警告、错误、提问等类型的消息框
question():弹出一个对话框,询问用户一个问题,并返回用户的选择结果
QFile
是Qt框架中用于读写文件的类
open():打开文件
readAll():读取整个文件的内容
write():文件写入数据
close():关闭文件
QFileDialog
是Qt框架中提供的一个类,用于创建一个对话框,让用户选择文件或目录
getSaveFileName():打开一个对话框,让用户选择一个保存文件的路径和文件名
getOpenFileName():打开一个对话框,让用户选择一个要打开的文件
QFileInfo
是Qt框架中的一个类,它提供了一个用于访问文件和目录信息的接口
filename():返回文件的名称
QString
是Qt框架中的一个类,用于处理字符串
toUtf8():将QString转换成UTF-8编码的QByteArray
QToolButton
是Qt框架中的一个控件,是一个带有图标和文本的按钮,通常用于工具栏、菜单等界面元素中
setIcon():设置图标
clicked():当按钮被点击时发出的信号
QFontDialog
getFont()选择字体
QFont
设置字体
QColorDialog
getColor():打开一个对话框,让用户选择一个颜色
QColor
代表一个颜色,可以通过 red()、green()、blue() 等函数获取颜色的 RGB 值
QLineEdit:
text(): 返回QLineEdit对象中的文本内容。
setText(): 设置QLineEdit对象的文本内容。
QDir:
setPath(): 设置QDir对象的路径。
cd(): 进入QDir对象的子目录。
cdUp(): 进入QDir对象的父目录。
entryInfoList(): 返回QDir对象中的所有文件和目录信息。
absolutePath(): 返回QDir对象的绝对路径。
QListWidget:
addItem(QListWidgetItem *item): 在QListWidget对象中添加一个QListWidgetItem对象。
clear(): 清空QListWidget对象中的所有项。
QListWidgetItem
setText():用于设置列表项的文本,参数为QString类型。
setIcon():用于设置列表项的图标,参数为QIcon类型;
QFileInfo
filename():用于获取文件名;
isDir():用于判断该文件是否为目录;
isFile():用于判断该文件是否为普通文件。
QSound
QSound::play():播放音频文件。
QSound::stop():停止播放音频文件。
QVideoWidget是一个用于显示视频的QWidget子类,在Qt中提供了直接播放视频的功能
QProcess类是Qt框架中一个用于执行外部程序的类