0
WF에서 반투명 배경으로 바탕 화면 테두리가 적은 위젯을 만들고 싶습니다. 이처럼 : C# WF 반투명 형식
그러나 지금은 운
. 내가 달성 할 수있는 모든this.Opacity = .4;
나는 또한 backgroundImage의 병용 TransparencyKey에 지출 일부 시간
this.BackColor = Color.Black;
this.TransparencyKey = this.BackColor;
또는 전체 양식 전체 배경 투명하지만, 결과는 단지 검은 색 배경이었다.
완전 필사적으로 필자는 텍스트로 완전히 투명한 두 개의 폼을 만들고 불투명도로 두 번째 폼을 만들었지 만, 움직이는 동안 첫 번째 윈도우를 위의 것으로 유지할 수 없어 텍스트가 희미하게 보였다.
WF에서 이것을 만들 가능성이 있거나 QT 또는 철저한 창 라이브러리를 찾아야합니다.
계층화 된 Windows를 사용할 수 있습니다. 예를 들어, [Windows Form Transparent Background Image] (http://stackoverflow.com/a/33531201/3110834)를보십시오. –
일반적으로 두 개의 창을 샌드위치해야합니다. 아래쪽은 불투명도를 사용하고 위쪽은 TransparencyKey를 사용합니다. 그러나 예측할 수없는 배경에 텍스트를 표시하는 것은 일반적으로 매우 나쁜 생각입니다. 표준 앤티 앨리어스 효과가 더 이상 제대로 작동하지 않으며 문자 모양을 배경에 더 이상 혼합하지 않습니다. 그들은 꽤 보이게되고 텍스트는보기 흉하게 보입니다. 올바른 방법은 Graphics.CopyFromScreen()을 사용하여 스크린 샷을 만들고 알파가 255 미만인 브러시로 비트 맵을 변경 한 다음 그 위에 텍스트를 그립니다. 스플래시 화면에서 잘 작동합니다. –
한스 전 샌드위치를 만들었습니다. 글꼴이 좋아 보이지만 배경이 투명 할 때 창을 클릭하고 기본 문구를 선택할 수 있습니다. 제 경우에는 배경 레이어를 맨 위에 배치하고 희미한 텍스트는 사용할 수 없습니다. – Sajgoniarz