QT day5

本文详细介绍了在QT编程中如何通过构造函数和成员函数进行参数传递,以及展示了信号槽机制在两个窗口间的数据同步应用。同时,讲解了事件函数的使用,包括常见的绘画、鼠标和键盘事件,并提及了QFileDialog、QFileInfo和QFile在文件操作中的作用,最后简要提到了窗体的常用设置函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【两个类传参方式(重点)】
一、构造函数传参
二、成员函数传参
例子:窗口1中有一个QDial和一个QPushButton,点击QPushButton后能跳转到窗口2,
      在窗口2中有一个QProgressBar,转动窗口1的QDial后,窗口2的进度条跟着动。
      
三、信号槽传参
例子:窗口1中有一个QProgressBar和一个QPushButton,点击QPushButton后能跳转到窗口2,
      在窗口2中有一个QDial,转动窗口2的QDial后,窗口1的进度条跟着动。
      
【事件函数(掌握)】
基于Qt的事件机制。
事件传递的过程中,事件函数会被自动调用。
事件有很多种,每一种事件对应一个事件函数。
常用的事件函数:
//绘制事件
void QWidget::paintEvent(QPaintEvent * event) [virtual protected]
//大小改变事件
void QWidget::resizeEvent(QResizeEvent * event) [virtual protected]
//鼠标按下事件
void QWidget::mousePressEvent(QMouseEvent * event) [virtual protected]
//鼠标释放事件
void QWidget::mouseReleaseEvent(QMouseEvent * event) [virtual protected]
//鼠标双击事件
void QWidget::mouseDoubleClickEvent(QMouseEvent * event) [virtual protected]
//鼠标移动事件
void QWidget::mouseMoveEvent(QMouseEvent * event) [virtual protected]
//移动事件
void QWidget::moveEvent(QMoveEvent * event) [virtual protected]
//按键按下
void QWidget::keyPressEvent(QKeyEvent * event) [virtual protected]
//按键抬起
void QWidget::keyReleaseEvent(QKeyEvent * event) [virtual protected]
//获取焦点
void QWidget::focusInEvent(QFocusEvent * event) [virtual protected]
//失去焦点
void QWidget::focusOutEvent(QFocusEvent * event) [virtual protected]
//关闭
void QWidget::closeEvent(QCloseEvent * event) [virtual protected]
//鼠标进入
void QWidget::enterEvent(QEvent * event) [virtual protected]
//鼠标离开
void QWidget::leaveEvent(QEvent * event) [virtual protected]
事件函数的用法:
1.查询适合的事件函数
2.在头文件中声明
3.在源文件中定义
4.处理事件函数的函数体要执行的内容
只有QPaintDevice的派生类才能被QPainter绘制。
【QFileDialog(熟悉)】
QStringList相当于QList<QString>.
//打开文件(并不是真的打开文件,只是获取一个文件的路径而已)
QString QFileDialog::getOpenFileName(QWidget * parent = 0,
                                     const QString & caption = QString(),
                                     const QString & dir = QString(),
                                     const QString & filter = QString()) [static]
参数一:parent参数
参数二:窗口标题
参数三:打开的根目录
参数四:过滤器
//设定保存文件(并不是真的保存文件,只是获取一个文件的路径而已)
QString QFileDialog::getSaveFileName(QWidget * parent = 0,
                                     const QString & caption = QString(),
                                     const QString & dir = QString(),
                                     const QString & filter = QString()) [static]
参数一:parent参数
参数二:窗口标题
参数三:打开的根目录
参数四:过滤器
【QFileInfo(熟悉)】
用于获取文件信息。
【QFile(掌握)】
用于读写文件。
QIODevice类是QFile的基类,是Qt中最基础的IO类。
QIODevice中规定了很多读写操作,这些操作都是通用的。
QByteArray 字节数组
【窗体常用函数(熟悉)】
所有的常用窗口类都继承自QWidget类。
在QWidget类中有很多专用于设定窗口效果的函数。
//设置窗口标题
void    setWindowTitle(const QString &)
//设置窗口标记
void    setWindowFlags(Qt::WindowFlags type)
//设置窗口状态
void setWindowState(Qt::WindowStates windowState)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值