폼에 Picture박스를 한개 가져다 놓고, 

아래와 같이 Visible속성을 적용하여 객체를 가시적으로 표현할 수 있습니다.


감출땐

Picture1.Visible = False    ' Hide


보이게할땐

Picture1.Visible = True     ' Show



이와 동일한 효과를 주기위해 ShowWindow 를 이용하여 폼이나 컨트롤 등의 핸들값을 가지는 객체를 Show/Hide 할 수 있습니다.


Private Declare Function ShowWindow Lib "user32" _

                        (ByVal hWnd As Long, _

                         ByVal nCmdShow As Long) As Long


Private Const SW_HIDE = 0

Private Const SW_SHOW = 5


감출땐 
ShowWindow Picture1.hWnd, SW_HIDE

보일게할땐
ShowWindow Picture1.hWnd, SW_SHOW



프로젝트 내에서 접근가능한 객체를 위와같이 Show/Hide하진 않지만 대상이 윈도우의 시작버튼이나 다른 프로그램의 경우라면

ShowWindow와 같은 API를 사용해야 합니다.

참고가 될만한 예로 바탕화면에 있는 아이콘을 말끔하게 지워버리는(?) 간단한 코드를 작성해봅니다.

폼에 Command버튼을 2개 만들고 각 버튼의 Caption 값을 Hide 와 Show로 합니다. 



Private Declare Function FindWindowEx Lib "user32" Alias _

                        "FindWindowExA" _

                        (ByVal hWnd1 As Long, _

                         ByVal hWnd2 As Long, _

                         ByVal lpsz1 As String, _

                         ByVal lpsz2 As String) As Long

                         

Private Declare Function ShowWindow Lib "user32" _

                        (ByVal hWnd As Long, _

                         ByVal nCmdShow As Long) As Long


Private Const SW_HIDE = 0

Private Const SW_SHOW = 5


'Hide 하는 버튼

Private Sub Command1_Click()

  Dim lHandle   As Long

  lHandle = FindWindowEx(0&, 0&, "Progman", vbNullString)

  ShowWindow lHandle, SW_HIDE

End Sub


'Show 하는 버튼

Private Sub Command2_Click()

  Dim lHandle As Long

  lHandle = FindWindowEx(0&, 0&, "Progman", vbNullString)

  ShowWindow lHandle, SW_SHOW

End Sub


lHandle 변수에 대상이 되는 객체에 핸들값을 얻어 ShowWindow 함수에 첫번째 인자값으로 넘겨주고 

SW_HIDE 또는 SW_SHOW 를 두번째 인자에 적용하기만 하면 되는 예입니다.


대상 객체의 핸들값을 구할 수 있는 방법은 여러가지 방법이 있겠지만 대체로 FindWindowEx, FindWindow 등을 이용하니 

검색을 통해 더 많은 정보를 찾으시길 바람니다.


Tip.

마우스 포인트가 위치하는 윈도우 핸들 구하기




'VB6 > Interface' 카테고리의 다른 글

폼에 보여줄 영역 만들기(구멍난 폼)  (0) 2013.03.28
폼 타이틀바 Show/Hide  (0) 2013.03.28
폼 위치, 크기 구하기  (0) 2013.03.27
폼 투명도 주기  (0) 2013.03.27
폼 타이틀바 이동효과  (0) 2013.03.26

+ Recent posts