VC 구현 대화 상자 창에 투명한 색상 지정
1182 단어 대화 상자
#define LWA_COLORKEY 0x00000001 //
#define WS_EX_LAYERED 0x00080000
typedef BOOL (WINAPI *lpfnSetLayeredWindowAttributes)(HWND hWnd, COLORREF crKey, BYTE bAlpha, DWORD dwFlags);
lpfnSetLayeredWindowAttributes SetLayeredWindowAttributes;
//
COLORREF maskColor=RGB(0,0,0);
HMODULE hUser32 = GetModuleHandle("user32.dll"); //
SetLayeredWindowAttributes = (lpfnSetLayeredWindowAttributes)GetProcAddress(hUser32,"SetLayeredWindowAttributes");
// SetLayeredWindowAttributes
// WS_EX_LAYERED
SetWindowLong(this->GetSafeHwnd(), GWL_EXSTYLE, GetWindowLong(GetSafeHwnd(), GWL_EXSTYLE)^WS_EX_LAYERED);
// SetLayeredWinowAttributes
SetLayeredWindowAttributes(this->GetSafeHwnd(), maskColor, 192, LWA_COLORKEY);
//
FreeLibrary(hUser32);
위 코드는 OnInitDialog()에 포함되며 SetLayered Window Attributes(this->GetSafeHwnd(), maskColor, 192, LWACOLORKEY);에서 maskColor는 투명하게 처리되는 색상이고 192는 투명도, LWACOLORKEY는 투명한 방식입니다.
전체 대화상자를 투명하게 하려면 LWACOLORKEY=2;
선택한 색상에 투명하려면 LWACOLORKEY=1;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
vue+ElementUI 닫기 대화 상자 비우기 인증, 폼 지우기앞에서 말씀드렸듯이elementUI 검증 문제를 말씀드렸습니다. 그러면 오늘은 클릭 대화상자와 닫기 단추를 누르면 어떻게 검증을 비우는지, 폼을 비우는지, 두 번의 클릭을 피하면 검증 오류가 있는지 힌트를 드리겠습니...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.