https://blog.csdn.net/qq_40507857/article/details/125730739
https://blog.csdn.net/qq_40507857/article/details/125863093

//鼠标进入事件
void myLabel::enterEvent(QEvent *event){
// qDebug()<<"鼠标进入事件";
}
//鼠标离开事件
void myLabel::leaveEvent(QEvent *event){
// qDebug()<<"鼠标离开事件";
}
//鼠标按下
void myLabel::mousePressEvent(QMouseEvent *ev){
if(ev->button()==Qt::LeftButton){
QString str = QString("鼠标按下 x=%1 y=%2 globalX=%3 globalY=%4").arg(ev->x()).arg(ev->y()).arg(ev->globalX()).arg(ev->globalY());
qDebug()<<str;
}
}
//鼠标释放
void myLabel::mouseReleaseEvent(QMouseEvent *ev){
qDebug()<<"鼠标释放";
}
//鼠标移动
void myLabel::mouseMoveEvent(QMouseEvent *ev){
qDebug()<<"鼠标移动";
}
定时器1
定时器2

//通过Event事件分发器 拦截 鼠标按下事件
bool myLabel::event(QEvent *e){
//如果是鼠标按下事件,在Event事件分发中做拦截操作
if(e->type()==QEvent::MouseButtonPress){
QMouseEvent *ev=static_cast<QMouseEvent *>(e);
QString str = QString("Event函数:鼠标按下 x=%1 y=%2 globalX=%3 globalY=%4").arg(ev->x()).arg(ev->y()).arg(ev->globalX()).arg(ev->globalY());
qDebug()<<str;
return true;//true代表用户自己处理这个事件,不向下分发
}
//其他事件 交给父类处理 默认处理
return QLabel::event(e);
}

void Widget::paintEvent(QPaintEvent *event){
//实例化画家对象 this指定的是绘图设备
QPainter painter(this);
//设置画笔
QPen pen(QColor(255,0,0));
//设置画笔宽度
pen.setWidth(3);
//设置画笔的风格
pen.setStyle(Qt::DotLine);
//让画家使用这个笔
painter.setPen(pen);
//设置画刷
QBrush brush(Qt::cyan);
//让画家使用画刷
painter.setBrush(brush);
//画线
painter.drawLine(QPoint(0,0),QPoint(100,100));
//画圆(椭圆)
painter.drawEllipse(QPoint(100,100),50,50);
//画矩形
painter.drawRect(QRect(20,20,50,50));
//画文字
painter.drawText(QRect(10,200,150,50),"好好学习,天天向上!");
}

//点击选取文件按钮,弹出文件对话框
connect(ui->pushButton,&QPushButton::clicked,[=](){
QString path = QFileDialog::getOpenFileName(this,"打开文件");
//将路径放入到lineEdit中
ui->lineEdit->setText(path);
//读取内容 放入到textEdit中
QFile file(path);
//设置打开方式
file.open(QIODevice::ReadOnly);
// QByteArray array=file.readAll();
QByteArray array;
while (!file.atEnd()) {
array+=file.readLine();//按行读取
}
//文件对象关闭
file.close();
//进行写文件
file.open(QIODevice::Append);//用追加方式进行写
file.write("这是追加的内容!");
file.close();

//QFileInfo 文件信息类
QFileInfo info(path);
qDebug()<<"大小:"<<info.size()<<"后缀:"<<info.suffix()<<"名称:"<<info.fileName()<<"路径:"<<info.filePath();
qDebug()<<"创建日期:"<<info.created().toString("yyyy-MM-dd hh:mm:ss");
qDebug()<<"最后修改日期:"<<info.lastModified().toString("yyyy-MM-dd hh:mm:ss");
