게임강의

[비베] Aero기능 사용하기 - DwmExtendFrameIntoClientArea API [출처] [VB6.0]Vista이상 OS에서 Aero기능 사용하기 - DwmExtendFrameIntoClientArea API

컨텐츠 정보

본문


 



DwmExtendFrameIntoClientArea API를 사용하겠습니다.

API를 선언해 줍시다.



Private Declare Function DwmExtendFrameIntoClientArea Lib "dwmapi.dll" (ByVal hWnd As Long, Margin As MARGINS) 

As Long

이 API는 폼의 바깥쪽에 여백을 주는 API입니다.


각 인자를 설명하겠습니다.

[ByVal hWnd As Long]은 폼의 핸들값을 입력받습니다.

[Margin As MARGINS]는 MARGINS구조체로 여백값을 입력받습니다.(※단위 픽셀)



MARGINS구조체를 만들어 줍시다.



 Private Type MARGINS

    cxLeftWidth As Long

    cxRightWidth As Long

    cyTopHeight As Long

    cyBottomHeight As Long

End Type



자세한 설명은 필요없겠죠.

각각 왼쪽,오른쪽,위쪽,아래쪽 여백을 지정합니다.



사용법 :



 Dim Margin As MARGINS '//위에서 선언한 MARGINS를  Margin이란 변수로 만들어 줍시다.

Margin.cxLeftWidth = 30 '//왼쪽에 30픽셀만큼의 Aero영역(여백)을 만들어 줍니다.(지정안해주면 0이 기본값. Long형이니까 ㄱ=)

Margin.cxRightWidth = 0

Margin.cyTopHeight = 0

Margin.cyBottomHeight = 0

Call DwmExtendFrameIntoClientArea(Me.hWnd, Margin) '//폼의 핸들을 입력해주고, 적용



※중요!

배경색은 검은색으로 해야 잘 나옵니다.

이해하기 쉽게 사진 찍어드립니다.

 



%B0%AD%C1%C2.png?type=w740



그러합니다. :)


 





 



팁으로 한가지 더 알려드리자면,



Margin.cxLeftWidth

Margin.cxRightWidth

Margin.cyTopHeight

Margin.cyBottomHeight

중 하나라도 값이 -1이라면 폼의 모든 영역에 Aero효과가 입혀집니다.

%C1%A6%B8%F1_%BE%F8%C0%BD.png?type=w740


관련자료

댓글 0
등록된 댓글이 없습니다.

최근글


새댓글


  • 등록자 벼배릅 등록일 04.14
알림 0