2010-02-15 15 views

Respuesta

13

Si estás en el formulario: Me.hWnd. Si no sabe qué forma es la forma actual: Screen.ActiveForm.hWnd

2

Ha sido un largo tiempo desde que utiliza Visual Basic 6, pero esto es lo que recuerdo:

Usted querrá abrir el Visor de API, que debe estar en el menú de inicio en torno a la entrada de VB6. Cuando lo abras, quieres seleccionar win32api.txt, y obtendrás una lista de todas las funciones de la API de Win32. Esta es la forma más fácil de no dañar las firmas de función. Copie y pegue la declaración de la función en uno de sus módulos VB6.

Siempre he "engañado" y solo busqué mi ventana por nombre de título, en lugar de recorrer todas las ventanas disponibles con GetWindow. Si está de acuerdo con esto, quiere usar FindWindow y pasar el nombre de título como el segundo parámetro.

8

El uso de la API de Windows, GetForegroundWindow() será obtener el identificador de la ventana superior independientemente de la aplicación es a partir de, y GetActiveWindow() obtendrá el mango de su solicitud de ventana activa. Las declaraciones Declare que va a necesitar:

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

de llamada o bien la función devolverá un identificador de ventana como se describió anteriormente.

+0

+1. Obviamente, la ventana activa actualmente puede no ser una forma. – MarkJ

+0

+1 Buena respuesta también. –

Cuestiones relacionadas