2010-02-15 5 views

답변

13

양식을 사용하는 경우 : Me.hWnd 현재 형태 인 양식을 알 수없는 경우 : 윈도우 API를 사용하여 Screen.ActiveForm.hWnd

2

은 내가 VB6를 사용하기 때문에 긴 시간이었다, 그러나 이것은 내가 기억하는 것입니다 :

당신은 VB6 항목 주위의 시작 메뉴에 있어야 API 뷰어를 열고 자하는 것입니다. 열 때 win32api.txt를 선택하면 모든 Win32 API 함수 목록이 표시됩니다. 이것은 기능 서명을 엉망으로 만들지 않는 가장 쉬운 방법입니다. 함수 선언을 복사하여 VB6 모듈 중 하나에 붙여 넣습니다.

나는 항상 "속여"GetWindow를 사용하여 사용 가능한 모든 창을 반복하지 않고 캡션 이름으로 내 창을 찾았습니다. 괜찮 으면 FindWindow를 사용하고 캡션 이름을 두 번째 매개 변수로 전달해야합니다.

8

, GetForegroundWindow()는 관계없이에서 어떤 응용 프로그램의 최상위 윈도우의 핸들을 얻을 것이다, 그리고 GetActiveWindow()는 응용 프로그램의의 핸들을 얻을 것이다 활성 창. Declare 당신이 필요합니다 문 : 전술 한 바와 같이 두 함수를 호출

Declare Function GetForegroundWindow Lib "user32.dll"() As Long 
Declare Function GetActiveWindow Lib "user32.dll"() As Long 

는 창 핸들을 반환합니다.

+0

+1. 분명히 현재 활성 창은 양식이 아닐 수도 있습니다. – MarkJ

+0

+1 좋은 답변입니다. –

관련 문제