C# 스타일 질문합니다.

c-sharp

(DevDream) #1

C# 스타일에 관한 부분을 Form_Load부분에 넣어서 사용중입니다.
그런데 이 폼의 Opaticy를 조정하면 이 스타일이 날라가버리더군요… ㅠㅠ

스타일을 유지시킬 수 있는 방법이 있나요?

08-07-22-07-01
처음 상태 (테두리를 봐주세요)

08-07-22-07-09
투명도 50% 상태

08-07-22-07-28
다시 투명도 100% 상태 (처음 상태로 돌렸을 때)

처음꺼랑 비교했을때, 테두리가 없어졌어요 ㅠㅠ


private const int GWL_STYLE = -16;

폼 로드{
    int style;
    style = GetWindowLong(this.Handle, GWL_STYLE);
    WindowStyle myStyle = (WindowStyle)style;
    myStyle = myStyle & ~WindowStyle.WS_CAPTION;
    myStyle = myStyle | WindowStyle.WS_BORDER;
    style = SetWindowLong(this.Handle, GWL_STYLE, (int)myStyle);
}

이게 스타일을 지정하는 부분이고요
투명도는 그냥 this.Opacity = 1; 이런식으로 했어요.

저 테두리를 꼭 남기고싶어요 ㅠㅠ

Update(), UpdateStyles(), Refrash()는 써봤어요.


(P.노우렛지Δ) #2

Opacity가 설정되면서 기존에 설정된 스타일이 초기화 된 것 같습니다.

투명도 변경 또한 API 코드에서 처리하도록 해야 하지 않을까 싶습니다.


(DevDream) #3

감사합니다 복 많이 받으세요


(DevDream) #4

혹시 api코드에서 투명도 조절을 어떻게 하시는지 아시나요 ㅠㅠ
찾기 힘드네요… ㅠ


(DevDream) #5

으아 해결했습니다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 너무 좋네요 ㅋㅋㅋㅋㅋㅋㅋㅋ 이틀 샜는데 얼떨결에 해결했습니다 감사합니다!! ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 와 이렇게 기쁠 수가 ㅠㅠㅠㅠㅠㅠ ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 이 맛에 프로그래밍 하나봅니다 다들 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ