Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Второй архив вопросов и ответов (https://www.otvetnemail.ru/vtoroj-arhiv-voprosov-i-otvetov-801/)
-   -   События и свойства объектов - как изменить порядок следования? (https://www.otvetnemail.ru/vtoroj-arhiv-voprosov-i-otvetov-801/sobytiya-i-svojstva-ob-ektov-kak-izmenit-poryadok-sledovaniya-206877/)

Guest 27.09.2011 11:46

События и свойства объектов - как изменить порядок следования?
 
Есть такой фильтр событий:КодC++ (Qt)ChatWindow::ChatWindow(QWidget *parent) : QWidget(parent){ QPushButton * connectButton = new QPushButton; connectButton->setCheckable(true); connectButton->installEventFilter(this);}bool ChatWindow:: eventFilter(QObject * obj, QEvent * event){ if(event->type() == QEvent::MouseButtonRelease && obj == connectButton) startConnect(!connectButton->isChecked()); return QWidget::eventFilter(obj , event);}void ChatWindow:: startConnect(bool checked){//-------------------}Проблема в том, что событие вызывается раньше, чем свойство checked у connectButton меняет свое значение. (В итоге в мою функцию startConnect(bool checked) приходиться передавать инвертированое от вызова connectButton->isChecked() значение.) А хотелось бы наоборот!Можно ли как-нибудь изменить приоритет вызова события или что-то подобное сделать, чтобы избавиться от костылей?


Часовой пояс GMT, время: 03:56.


© www.otvetnemail.ru - Форум вопросов и ответов.