C#에 여러 개의 창문을 연결하려면 어떻게해야합니까?
-
06-07-2019 - |
문제
초점을 잃을 때 창 (앱 외부)을 투명하게 만드는 응용 프로그램을 만들려고합니다. 한 가지를 제외하고는 대부분의 것들 (창 ID를 얻고 투명한 설정 등)이 쉬울 것입니다.
해결책
Interop을 사용할 수 있습니다. 사용 문자 보내() 기능을 사용자 정의 메시지를 보내도록 함수. 그런 다음 창을 호출 할 수 있습니다 setlayeredwindowattributes () 일단 당신이 그 메시지를 받으면 투명성을 변경하십시오.
또 다른 것은 당신이 실제로 창을 들으면서 초점을 잃을 때 창을 투명하게 만들 수 있어야한다는 것입니다. wm_killfocus
편집하다:
C#에서 비활성화 및 활성화 된 이벤트에 걸립니다.
private void Form1_Deactivate( object sender, EventArgs e ) { this.Opacity = 0.5 ; } private void Form1_Activated( object sender, EventArgs e ) { this.Opacity = 1.0 ; }
제휴하지 않습니다 StackOverflow