У меня есть программа PyQt Python, которая имеет QWidget в главном окне. Я добавил 2 разных вида в тот же QWidget. Когда пользователь нажимает кнопку Button1, я показываю view1 и скрываю view2. Когда пользователь нажимает кнопку Button2, я показываю view2 и скрываю view1. Каждый вид имеет свой собственный KeyPressEvent для использования клавиш со стрелками для просмотра через записи в представлении.PyQt: Independent KeyPressEvent между двумя различными видами на форме
Я не хочу, чтобы страницы через записи в обоих представлениях одновременно, мне просто нужно вывести записи активного вида.
Как отключить/включить соответствующий KeyPressEvent, когда соответствующее представление активно. Или это лучший подход?
Извините за отсутствие кода, но это трудно упростить мой рабочий пример.
Почему бы не использовать QStackedLayout и позволить ему выполнять тяжелую работу? http://pyqt.sourceforge.net/Docs/PyQt4/qstackedlayout.html –
Ха-ха ... эта мысль перешла мне на ум, а также с помощью tabwidget И я как раз собирался сделать это, когда ... Я решил это , Простой ответ .. просто setFocus на объект в соответствующем представлении, который только что был видимым. В любом случае, я все равно могу сделать tabwidget. Благодарю. – panofish