如何重写qt的clicked信号,*如何重写qt的clicked信号,如/何重写qt/的clicked信号,
2条回答 默认 最新
关注 定义头文件mylineedit.h
#ifndef MYLINEEDIT_H #define MYLINEEDIT_H #include <QObject> #include <QLineEdit> #include <QMouseEvent> class MyLineEdit : public QLineEdit { Q_OBJECT public: explicit MyLineEdit(QWidget *parent = NULL); void init(); protected: void mousePressEvent(QMouseEvent *event);//重写mousePressEvent signals: void clicked();//clicked信号
源文件(mylineedit.cpp)
MyLineEdit:: MyLineEdit(QWidget *parent) : QLineEdit(parent) { this->setEchoMode(BoxPswLineEdit::Password);//默认输入格式为密文,根据需求添加默认属性 } //重写事件过滤器 void MyLineEdit::MyLineEdit(QMouseEvent * event) { if (event->button() == Qt::LeftButton)//鼠标点击左键就会触发信号,根据需求设置 { emit clicked(); } QLineEdit::mousePressEvent(event); }
本文重写了事件过滤器来添加了点击事件,设置了左键点击,可以根据需求更改。同时不止可以重写鼠标点击事件,可以按照需求来更改代码。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
- ¥15 IAR程序莫名变量多重定义
- ¥15 (标签-UDP|关键词-client)
- ¥15 关于库卡officelite无法与虚拟机通讯的问题
- ¥15 目标检测项目无法读取视频
- ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
- ¥100 求采集电商背景音乐的方法
- ¥15 数学建模竞赛求指导帮助
- ¥15 STM32控制MAX7219问题求解答
- ¥20 在本地部署CHATRWKV时遇到了AttributeError: 'str' object has no attribute 'requires_grad'