¿Cómo utilizar VB para agarrar la manija de la ventana?
Para encontrar el identificador de un formulario, necesita usar la API. Los más utilizados son: FindWindow (generalmente solo encuentra el identificador de la ventana principal), FindWindowEx (puede encontrar el identificador de la ventana principal). ventana secundaria), dé un ejemplo, solo se usa un control de comando. Espero que pueda ayudarlo. Si no lo comprende, consulte: Opción explícita
Función de declaración privada FindWindow Lib "user32" Alias. "FindWindowA" (ByVal lpClassName como cadena, ByVal lpWindowName como cadena) mientras
Función de declaración privada FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 mientras, ByVal hWnd2 mientras, ByVal lpsz1 como cadena, ByVal lpsz2 como cadena) mientras
Función de declaración privada GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd mientras, ByVal lpString como cadena, ByVal cch mientras) Como Long
Función de declaración privada GetClassName Lib "user32" Alias "GetClassNameA" (ByVal hwnd As Long, ByVal lpClassName As String, ByVal nMaxCount As Long) As Long
Private Const MaxControlUnit = 65535
Subcomando privado1_Click()
Atenuar hwnd mientras
Atenuar hWnd2 mientras
Atenuar título como cadena * 255
Atenuar nombre de clase como cadena * 255
Atenuar salida como cadena
Atenuar i como longitud
hwnd = FindWindow(vbNullString, "Form1" )
Para i = 0 para MaxControlUnit
hWnd2 = FindWindowEx(hwnd, hWnd2, vbNullString, vbNullString)
Si hWnd2 gt;
GetClassName hWnd2, ClassName, Len(ClassName)
GetWindowText hWnd2, Caption, Len(Caption)
Salida = "El identificador es: " amp; amp "El nombre de la clase es: " amp ClassName
Salida de MsgBox
Salida;
= "El título es:" amp Caption
Salida de MsgBox
Else
Salir para
Finalizar si
Siguiente
End Sub
Simplemente modifica el formulario1 al nombre del formulario que desees y listo