Отправляет email-рассылки с помощью сервиса Sendsay

Программирование. Форум !!!

За 2006-12-30

Re: прозрачное окно

Victor V. Vakchturov wrote:

>>Пусть имеется хэндл окна HWND. Необходимо сделать это окно
>>полупрозрачным
>>
>SetWindowLong(hwnd, GWL_EXSTYLE,
> GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED);
>SetLayeredWindowAttributes(hwnd, 0, (255 * 70) / 100, LWA_ALPHA);
>
>
Спасибо, работает! :-) Но почему-то не получается таким образом сделать прозрачным
консольное окно, например окно Far'а.

   2006-12-30 18:41:44 (#625497)

Re: прозрачное окно

Здравствуйте !

> Пусть имеется хэндл окна HWND. Необходимо сделать это окно
> полупрозрачным с заданной степенью прозрачности. Пожалуйста,
> приведите
> кусок кода. Windows XP.

// Set WS_EX_LAYERED on this window
SetWindowLong(hwnd, GWL_EXSTYLE,
GetWindowLong(hwnd, GWL_EXSTYLE) | WS_EX_LAYERED);
// Make this window 70% alpha
SetLayeredWindowAttributes(hwnd, 0, (255 * 70) / 100, LWA_ALPHA);

и в MFC, соответственно есть:
CWnd::SetLayeredWindowAttributes, итд.

   2006-12-30 15:17:23 (#625443)

Re: прозрачное окно

Hello Юрчик,

Saturday, December 30, 2006, 1:29:21 AM, you wrote:

> Привет всем :-)

> Пусть имеется хэндл окна HWND. Необходимо сделать это окно
> полупрозрачным с заданной степенью прозрачности. Пожалуйста, приведите
> кусок кода. Windows XP.

SetWindowLongA(hwnd,GWL_EXSTYLE,$80000); включение
полупрозрачности

SetLayeredWindowAttributes(hwnd, 0, величина_прозр_0..255, $2);

Эт в дэлфе(>5), в си должно быть примерно также, т.к. функции API.
Если компилятор будет матерится, то опиши функции вручную, они
содержатся в user32.dll

   2006-12-30 15:16:26 (#625441)