首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

请问怎么能让QplainEdit既能响应键盘事件,又能接受输入

2012-08-08 
请教如何能让QplainEdit既能响应键盘事件,又能接受输入小弟刚接触qt还未入门,遇到问题,请大牛赐教。void QP

请教如何能让QplainEdit既能响应键盘事件,又能接受输入
小弟刚接触qt还未入门,遇到问题,请大牛赐教。
void QPlainTextEdit::keyPressEvent(QKeyEvent *e)
{
  if(e->key()==Qt::Key_Delete)
  {
  QMessageBox::warning(0,tr("警告"),tr("不能重复选择相同联系人!"),QMessageBox::Ok);

  }
  else  
  QWidget::keyPressEvent(e);
}


我想实现的是如果QPlainEdit中键入的是其他字符,就显示字符;如果是delete键就自己另外处理,代码随便写了个messagebox测试用的。

[解决办法]
可以研究一下这个函数eventFilter ( QObject * watched, QEvent * event ) ,用之前先要对先关控件进行安装,installEventFilter().
[解决办法]

C/C++ code
void QPlainTextEdit::keyPressEvent(QKeyEvent *e){  if(e->key()==Qt::Key_Delete)  {  QMessageBox::warning(0,tr("警告"),tr("不能重复选择相同联系人!"),QMessageBox::Ok);  }  else     QWidget::keyPressEvent(e);//改为下面的代码  QPlaintTextEdit::keyPressEvent(e);} 

热点排行