Hittest прозрачность для всей формы
Возможно ли, чтобы все границы формы были максимально прозрачными, не регулируя видимость формы?
Я использую API-вызов user32 для WindowFromPoint
чтобы найти управление под мышкой. В некоторых обстоятельствах я хотел бы игнорировать существование дочерней формы, которая плавает перед основной формой (или другой дочерней формой), но оставить эту форму игнорируемой видимой.
Если для параметра "Непрозрачность" формы игнорировать значение 0, это приведет к тому, что тест попадания пройдет прямо через нее, но форма, очевидно, невидима, и я бы предпочел, чтобы она оставалась видимой.
Поскольку эта дочерняя форма может иметь любое произвольное количество элементов управления, существует ли способ для этой формы перехватить все WM_NCHITTEST
сообщений, отправляемых дочерним элементам управления в форме, чтобы я мог вернуть наивысшую прозрачность для каждого элемента управления? Элементы управления, содержащиеся в форме, являются произвольными, поэтому я не могу изменить их внутренне.
1 ответ
Вы ищете WS_EX_TRANSPARENT Windows Style.
Этот ответ дает достаточно хорошее объяснение.