Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Hasło nie zostało zweryfikowane
Niniejsze hasło zostało opracowane, jednak nie zostało ono zweryfikowane przez administrację serwisu. Jeżeli znalazłeś błędy merytoryczne w niniejszym dokumencie, prosimy o ich zgłoszenie na forum w dziale Znalezione błędy.
Opracował: xevuel
Biblioteki C/C++

SetLayeredWindowAttributes

[funkcja] Ustala stopień przeźroczystości okna.

Składnia

C/C++
#define _WIN32_WINNT 0x0500
#include <windows.h>

WINUSERAPI BOOL WINAPI SetLayeredWindowAttributes(
HWND hwnd,
COLORREF crKey,
BYTE bAlpha,
DWORD dwFlags
);

Argumenty

ArgumentZnaczenie
hwndUchwyt do okna, dla którego będzie ustawiana przeźroczystość.

Windows 8:
Styl WS_EX_LAYERED jest obsługiwany zarówno dla okien głównych, jak i potomnych. Poprzednie wersje Windows obsługiwały ten styl jedynie na oknach głównych.

crKeyKolor, który w danym oknie będzie przeźroczysty
bAlphaStopień przeźroczystości okna
dwFlagsAkcja, która ma być wykonana.

Dopuszczalne jest użycie następujących wartości:

  • LWA_ALPHA (0x00000002)
    Użyj bAlpha, aby określić przeźroczystość danego okna.

  • LWA_COLORKEY (0x00000001)
    Użyj crKey jako koloru przeźroczystości.

Zwracana wartość

Funkcja w przypadku wykonania swojego zadania zwraca wartość niezerową. W przeciwnym wypadku zwraca 0. Aby uzyskać szczegółowe informacje o błędzie, użyj funkcji » WinAPIGetLastError.

Opis szczegółowy

Użycie funkcji SetLayeredWindowAttributes wymaga zdefiniowania stałej _WIN32_WINNT na co najmniej
0x0500
. Następnie dla okna, które ma być przeźroczyste, należy użyć stylu rozszerzonego WS_EX_LAYERED. Przykład użycia:
C/C++
int ile_procent = 50;
SetLayeredWindowAttributes( hwnd, 0,( 255 * ile_procent ) / 100, LWA_ALPHA );

Wymagania

Minimalny obsługiwany klientWindows 2000 Professional
Minimalny obsługiwany serwerWindows 2000 Server
NagłówekWinuser.h (wewnątrz Windows.h)
BibliotekaUser32.lib
DLLUser32.dll

Linki zewnętrzne