• 5325阅读
  • 4回复

关于键盘事件 [复制链接]

上一主题 下一主题
离线tinglan
 

只看楼主 倒序阅读 楼主  发表于: 2009-03-05
我想用PageUP和PageDown进行事件控制,我的程序段如下:
void qt_test::keyPressEvent(QKeyEvent *e)
{
    if(e->key()==Qt::Key_Prior)
    {
         listBox1->insertItem (trUtf8("UP"),-1 );
    }
    else if(e->key()==Qt::Key_Next)
    {
         listBox1->insertItem (trUtf8("DOWN"),-1 );
    }
}
但运行之后并没有在listBox1中加入item,请问是怎么回事?

离线mumutouv

只看该作者 1楼 发表于: 2009-03-05
问题出来你的代码上了,呵呵
离线tinglan

只看该作者 2楼 发表于: 2009-03-05
引用第1楼mumutouv于2009-03-05 12:02发表的  :
问题出来你的代码上了,呵呵

恳请指点一下!我使用Key_Insert和Key_Delete键可以实现,但用PageUp和PageDown键不知如何实现。
离线tinglan

只看该作者 3楼 发表于: 2009-03-09
顶起!希望大家指点!
离线huosports
只看该作者 4楼 发表于: 2009-03-10
几行代码没问题,可能出现的问题:
如果单单就一个直接从QWidget派生来的qt_test,既然调用keyPressEvent函数Key_Insert和Key_Delete正常,排除派生类函数调用异常的情况;可能的异常出在qt_test的父类中定义eventFilter,Qt::Key_Prior和Qt::Key_Next已被屏蔽;最没有理由的问题可能是键盘驱动了,所有的键都挨个试试,可能并非PageUp映射Qt::Key_Prior,还有可能你的键盘改destroy了:)
快速回复
限100 字节
 
上一个 下一个