本文记录Qt里给LineEdit、Label等普通控件增加点击事件的操作,常用的两种方法如下:
方法一
- 以LineEdit为例,增加子类继承QLineEdit类,重新实现mousePressEvent函数
MyLineEdit.h
#ifndef MYLINEEDIT_H
#define MYLINEEDIT_H
#include <QObject>
#include <QLineEdit>
#include <QMouseEvent>
class MyLineEdit : public QLineEdit
{
Q_OBJECT //记得要加,不然emit那行编译报错
public:
explicit MyLineEdit(QWidget *parent = 0);
~MyLineEdit();
protected:
virtual void mousePressEvent(QMouseEvent *e);
signals:
void clicked(); //提供给外部的信号
};
#endif // MYLINEEDIT_H
MyLineEdit.cpp
#include "mylineedit.h"
MyLineEdit::MyLineEdit(QWidget *parent)
:QLineEdit(parent)
{
}
MyLineEdit::~MyLineEdit

本文介绍了在Qt中为LineEdit、Label等控件添加点击事件的两种常见方法,包括子类继承及事件过滤器的应用。通过实例演示了如何使用并提升用户体验。
最低0.47元/天 解锁文章
1549

被折叠的 条评论
为什么被折叠?



