QLineEdit控件双击事件重定义

CommentLineEdit.h
/该文件为comment双击选中控件的头文件/

#ifndef COMMENTLINEEDIT_H
#define COMMENTLINEEDIT_H

#include
#include

class CommentLineEdit : public QLineEdit
{
Q_OBJECT

public:
CommentLineEdit(QWidget *parent);
~CommentLineEdit();

/**
	Description:
		重写鼠标双击事件
	@param	event 系统鼠标双击事件
	@return	无
*/
virtual void mouseDoubleClickEvent(QMouseEvent *event);

signals:

void VLineEditDoubleClickedSignal();//双击信号

};

#endif // COMMENTLINEEDIT_H

CommentLineEdit.cpp
/该文件为comment双击选中控件的源文件/

#include “CommentLineEdit.h”

#pragma region 构造函数和析构函数
/***********************************************************************/
/
构造函数 /
/
***********************************************************************/
CommentLineEdit::CommentLineEdit(QWidget *parent)
: QLineEdit(parent)
{

}

/***********************************************************************/
/
析构函数 /
/
***********************************************************************/
CommentLineEdit::~CommentLineEdit()
{

}
#pragma endregion

#pragma region 重写鼠标事件
/***********************************************************************/
/
重写mousePressEvent事件,检测事件类型是否为双击鼠标事件 /
/
***********************************************************************/
void CommentLineEdit::mouseDoubleClickEvent(QMouseEvent *event)
{
//如果单击了就触发doubleClicked信号
if (event->button() == Qt::LeftButton)
{
emit VLineEditDoubleClickedSignal();
}
this->update();
}
#pragma endregion

猜你喜欢

转载自blog.csdn.net/xiao123456bin/article/details/89476768