Я использую общие элементы управления Windows, такие как «КНОПКА» и «РЕДАКТИРОВАТЬ» для моего приложения. В некоторых случаях я хочу отключить компоненты, поэтому я использую функцию EnableWindow
, чтобы компоненты выглядели отключенными и не получали события.
Проблема, однако, в том, что отключенный компонент не просто блокирует события щелчка мыши - он передает их компонентам, расположенным ниже. Есть ли способ предотвратить прохождение событий щелчка мышью через отключенные компоненты? Или, альтернативно, простой способ проверить этот случай и отбросить эти события?
Я думал о создании прозрачных окон сверху, но это звучит слишком сложно для чего-то, что кажется таким тривиальным. Я также подумал о проверке совпадений координат мыши с дочерними элементами каждого контейнера перед тем, как принять событие.
Есть ли лучший способ? У меня уже есть настраиваемая область в WndProc (я подклассифицировал класс кнопки), чтобы перехватывать события кнопки мыши, если это помогает.
Заранее спасибо!