qt 为QtextEdit设置回车事件

其实挺简单的:


在你新建的 QWidget.h(我一般简称为:界面类)里
引入 头文件

#include<QKeyEvent>

QT里本身就包含了两种键盘事件(按下和释放),能够实现大部分的需求

void QWidget::keyPressEvent(QKeyEvent *event)   //键盘按下事件
void QWidget::keyReleaseEvent(QKeyEvent *event) //键盘松开事件

在界面类的protected:方法里进行声明。
qt 为QtextEdit设置回车事件_第1张图片
下面转到widget.cpp文件

在widget的构造函数里写:

this->grabKeyboard();//捕获键盘

对保护类的方法写方法体

void TcpClient::keyPressEvent(QKeyEvent *event)
{
	//Enter事件好像这两个都要写,只写event->key() == Qt::Key_Enter,无法实现
	if (event->key() == Qt::Key_Enter || event->key() == Qt::Key_Return)
	{
		sendMsg();
	}
}

sendMsg();是个槽函数。原来界面类的槽函数可以当函数直接使用呀!有得。

你可能感兴趣的:(Qt,C++,C++,键盘事件,回车事件,qt)