Переключить форму Windows между модальной и немодальной - PullRequest
0 голосов
/ 29 октября 2018

Можно ли переключать форму Windows между "модальной" и "немодальной" или между .Show() и .ShowDialog(), оставаясь при этом активной в той же форме. Я понял, что свойство .Modal доступно только для чтения.

Мне нужно временно заблокировать основное приложение из-за конфликтов ярлыков, чтобы пользователь мог вводить текст в текстовое поле в форме без вызова ярлыков (см. Мой первоначальный вопрос об этой проблеме: Подавление ярлыков основного приложения и отправка нажатий клавиш только для формирования )

Есть идеи? :)

РЕДАКТИРОВАТЬ, ярлыки не подавляются, даже если основное приложение заблокировано:

Мне удалось сделать форму "модальной" / заблокировать основное приложение, используя BOOL EnableWindow( HWND hWnd, BOOL bEnable );.

В документации приведены цитаты:

Включает или отключает ввод с клавиатуры и мыши в указанное окно или элемент управления.

(https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-enablewindow)

Это частично работает, так как ввод с мыши подавлен, но, к сожалению, пока нет ввода с клавиатуры в основное приложение.

Какие-нибудь подсказки, другие идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...