16,216
社区成员
发帖
与我相关
我的任务
分享
bool InjectionPhase::eventFilter(QObject *obj, QEvent *event)
{
if((obj == rateEdit) && (
//(event->type() == QEvent::FocusIn) ||
(event->type() == QEvent::FocusOut) //||
//(event->type() == QEvent::FocusAboutToChange)
) )
{
//rateEdit->setFocus();
return true;
}
return QWidget::eventFilter(obj, event);
}
bool ProtocolManager::eventFilter(QObject *obj, QEvent *event)
{
if((event->type() == QEvent::MouseButtonPress) )
{
//qDebug()<<"obj-----------------"<<obj;
if(wFocusPrevious) // 该变量保存了上次焦点所在的部件
{
MyLineEdit *temp = qobject_cast<MyLineEdit*>(wFocusPrevious);
if(temp)
{
int isValidValue = 0;
//your function to check the value
if(isValidValue )
{
wFocusPrevious = obj;
return false;
}
else
{
temp->setFocus();
temp->selectAll();
return true;
}
}
}
wFocusPrevious = obj;
}
return QWidget::eventFilter(obj, event);
}