2014-11-01 235 views
0

在我的对话框中有一个名为rightLabel的QLabel对象,当我点击右键时,我想右键标签显示“右键单击确定”。它不起作用。然后代码是:QLabel setText()在Qt环境中的Event()函数中不起作用

bool MyDialog::event(QEvent *evt) 
{ 
    if(evt->type()==QEvent::ContextMenu) 
    { 
     qDebug()<<"rightbutton"; //that's ok 
     this->rightLabel->setText("Right Click OK");//doesn't work 
    } 
    …… 

回答

0

你应该return QDialog::event(evt);,一切都会好起来的。

bool MyDialog::event(QEvent *evt) 
{ 
    if(evt->type()==QEvent::ContextMenu) 
    { 
     qDebug()<<"rightbutton"; //that's ok 
     this->rightLabel->setText("Right Click OK");//will work 
    } 
    //other if 
    return QDialog::event(evt); 
}