Создание прозрачного дочернего окна поверх непрозрачного родительского окна (победа 32)
У меня есть программа, которая не написана мной. У меня нет источника, и разработчик этой программы разрабатывает самостоятельно. Он дает мнеHWND
а такжеHINSTANCE
ручки этой программы.
Я создал дочернее окно на своем окне, используяwin32
апи.
Первое, что мне нужно, чтобы это дочернее окно имело прозрачность в одной области и непрозрачное в другой области (например, отображение Heads Up (HUD) для игры), чтобы пользователь мог видеть вещи в обоих окнах.
Второе, что мне нужно, это направить весь ввод в родительское окно. Моё дочернее окно не требует ввода.
я знаю этоWS_EX_TRANSPARENT
только заставляет ребенка рисовать в конце, как в алгоритме художников.
я не могу использоватьWS_EX_LAYERED
потому что это дочернее окно.
заранее спасибо :)
постскриптум Я искал повсюду, но не нашел никакого решения, хотя в Интернете были похожие вопросы. на самом деле это HUD как вещь для этой игры. я не могу рисовать непосредственно в родительском окне из-за сложности многопоточности и многих других причин.
-- РЕДАКТИРОВАТЬ ---------------------------
Привет ребят,
Я все еще работаю над этим. пробуя разные способы с тем, что вы все предложили.
Есть ли способ объединитьdirectX
а такжеSetWindowRgn()
функция илиdirectx
сBitBlt()
функция. Я думаю, что это поможет.
В настоящее время я тестирую все вещи, как дочернее окно и многослойное окно.