Распознать установленный / потерянный Focus-Event в QWindow

Я создал комбинированный блок Qt-Quick, который, когда он будет нажат, открывает окно QW, в котором я показываю содержимое в TableView. Проблема в том, что фокус на TableView не может быть установлен.

Итак, первый вопрос: как я могу установить фокус на моем TableView (который находится внутри моего QWindow)?

Кроме того, я должен получить событие, если пользователь щелкает рядом с QWindow или вне приложения. Это означает, что фокус был изменен, и я могу закрыть свое QWindow.

Итак, второй вопрос: как я могу получить информацию, что TableView потерял фокус?

Заранее спасибо.

1 ответ

Для производных классов от QWidget:

Чтобы установить фокус, используйте setFocus.

Чтобы распознать, что фокус потерян, вы можете получить класс и переопределить focusOutEvent или написать фильтр событий.

Другие вопросы по тегам