2014-04-10 4 views
4

어도비 포토샵 및 비주얼 스튜디오 세미 투명한 화면을 반투명 환영 스플래시 화면으로 디자인하려고합니다. 애플리케이션을 여는 중입니다. FormBorderStyle을 none으로 설정하고 그림 상자를 그 위에 놓고 그 위에 png 이미지를 추가했습니다. 그림 상자 색상을 투명하게 설정했지만 Form의 배경색을 투명하게 설정할 수는 없습니다. 아래 exmples 있습니다멋진 세미 투명 스플래시 스크린을 디자인하는 방법은 무엇입니까?

Photo shop start up splash screen

Visual studio start up splash screen

을 내가 투명 폼의 배경색을 설정할 때, 그것은 나를

속성이 유효하지 오류 보여줍니다. 컨트롤은 투명 배경색을 지원하지 않습니다.

public Splash_Screen() 
{ 
    this.SetStyle(ControlStyles.SupportsTransparentBackColor, true); 
    InitializeComponent(); 
    this.BackColor = Color.Red; 
    BackColor = Color.Transparent; 
} 

public Splash_Screen() 
{ 
    this.SetStyle(ControlStyles.SupportsTransparentBackColor, true); 
    InitializeComponent(); 
} 

그러나의 속삭임이 나를 위해 작동 .. 어떤 제안 : 아래 그림과 같이

는 이미 코드 샘플 몇 가지를 시도?

+0

[중복되지 않는 직사각형 Winforms 만드는 방법] (http://stackoverflow.com/questions/2664754/how-to-make-a-non-rectangular-winforms) –

+0

안녕하세요 @BenVoigt, 감사합니다. 이 귀중한 의견, 이것은 직사각형이 아닌 모양을 디자인하는 대안이 될 수 있습니다.하지만 질문이 있습니다. 바보 같은 질문처럼 들릴 수도 있지만, 내가 제공 한 코드를 어디에서 구현하는지 정당화하면 좋을 것입니다. 위의 링크? –

+0

폼의'OnLoad' 메소드는 좋은 장소입니다. –

답변

6

반투명 배경 이미지를 양식의 BackgroundImage 속성으로 설정했습니다. 그런 다음 BackColor을 양식에 설정하고 양식의 TransparencyKey 속성을 양식에 설정 한 것과 동일한 색상으로 설정하십시오 (BackColor). 그런 다음 폼의 FormBorderStyle 속성을 None으로 변경하여 폼의 테두리를 제거합니다. 그렇게 할 것입니다.

+0

나는 당신이 그것을 관리했기 때문에 기쁩니다. –

+2

나는 이것이 최선의 해결책이라고 생각한다. 나는 수년 동안이 권리를 얻으려고 애 쓰고있다. 이제 PINK를 내 backColor 및 TransparencyKey로 사용할 수있었습니다 (내 이미지에 그런 색상이 없음을 알았습니다). 내 이미지에 투명 배경이 있는지 확인했습니다 (이 투명도, 아이콘, PNG 등). 또한 진행률 표시 줄 컨트롤을 양식/이미지의 일부에 추가하면 멋지게 보입니다. 고마워요. (샤 버그) – Chagbert

+0

그게 너를 도왔다 니 기쁩니다. –

관련 문제