Cómo Colocar Una Manija En Una Ventana

Tabla de contenido:

Cómo Colocar Una Manija En Una Ventana
Cómo Colocar Una Manija En Una Ventana

Video: Cómo Colocar Una Manija En Una Ventana

Video: Cómo Colocar Una Manija En Una Ventana
Video: Como reemplazar seguro da la manija del elevador de la ventana de tu auto (Chevy) 2024, Noviembre
Anonim

El concepto de interfaz de usuario en Windows se basa en el concepto de ventana. Los diálogos, botones, paneles de control, listas son todas ventanas. Por lo tanto, para realizar cualquier acción con cualquier elemento de la interfaz de su propia aplicación o la de otra persona, debe obtener un identificador de ventana.

Cómo colocar una manija en una ventana
Cómo colocar una manija en una ventana

Necesario

  • - Paquete Platform SDK;
  • - compilador.

Instrucciones

Paso 1

Consiga la manija de la ventana creándola. Realice llamadas a las funciones de la API CreateWindow o CreateWindowEx, o llame a los métodos contenedores apropiados (en los objetos necesarios) de las clases del marco o biblioteca utilizados que encapsulan la funcionalidad de trabajar con ventanas o controles. Las funciones CreateWindow y CreateWindowEx devuelven directamente el identificador de ventana en la creación exitosa. Si se llaman sin éxito, devuelven NULL. El código de motivo del error se puede solicitar mediante la función de API GetLastError. Se pueden obtener prototipos y descripciones detalladas de los parámetros de las funciones CreateWindow y CreateWindowEx en los enlaces https://msdn.microsoft.com/en-us/library/windows/desktop/ms632679%28v=vs.85%29.aspx y https:// msdn.microsoft.com / en-us / library / windows / desktop / ms632680% 28v = vs.85% 29.aspx Cuando se usan clases de diferentes marcos, la creación de objetos de ventana del sistema operativo puede ocurrir explícitamente (llamando a un método) o implícitamente (implementación de la estrategia RAII). Por lo tanto, es mejor obtener el identificador de la ventana en un objeto inicializado listo para usar. Puede conocer los métodos de las clases que devuelven el identificador de ventana encapsulado por el objeto en la documentación del marco correspondiente. Por ejemplo, en MFC, un método similar es GetSafeHwnd de la clase CWnd.

Paso 2

Consiga un identificador de una ventana buscándola. Utilice las funciones de API FindWindow y FindWindowEx o los contenedores de objetos de clase apropiados para el marco que está utilizando. FindWindow devuelve un identificador a la ventana de nivel superior si se encuentra, o NULL en caso de error. La búsqueda se realiza por nombre de clase y título de ventana. La descripción de los parámetros y aspectos de la función se puede encontrar en el enlace https://msdn.microsoft.com/en-us/library/windows/desktop/ms633499%28v=vs.85%29.aspx. La semántica de la función FindWindowEx es similar a FindWindow con la única diferencia de que busca ventanas secundarias. La documentación de FindWindowEx está disponible en

Paso 3

Busque la manija de la ventana mientras enumera sus conjuntos. Utilice las funciones de API EnumWindows, EnumChildWindows, EnumThreadWindows o métodos de objetos de clase del marco que esté utilizando. Las funciones EnumWindows y EnumChildWindows enumeran las ventanas de nivel superior y las ventanas secundarias, respectivamente. La función EnumThreadWindows enumera todas las ventanas no secundarias del subproceso especificado. A cada una de estas funciones se le debe pasar un puntero a un procedimiento de devolución de llamada, al que se le pasarán los identificadores de las ventanas encontradas como parámetros durante la operación. Combinando funciones de enumeración, obteniendo y analizando las propiedades de la ventana en el procedimiento de devolución de llamada, puede encontrar el identificador de la ventana requerida. La documentación de las funciones descritas se encuentra en los enlaces: - EnumWindows: https://msdn.microsoft.com/en-us/library/windows/desktop/ms633497%28v=vs.85%29.aspx; - EnumChildWindows: https:// msdn.microsoft.com/en-us/library/windows/desktop/ms633494%28v=vs.85%29.aspx; - EnumThreadWindows: https://msdn.microsoft.com/en-us/library / windows / desktop /ms633495%28v=vs.85%29.aspx.

Paso 4

Obtenga un identificador de una ventana en coordenadas conocidas. Las funciones WindowFromPoint, ChildWindowFromPoint, ChildWindowFromPointEx devuelven identificadores a las ventanas a las que pertenece el punto especificado. La función WindowFromPoint es la más fácil de usar, pero no devuelve identificadores para ventanas ocultas o deshabilitadas. Puede encontrar documentación sobre su uso en https://msdn.microsoft.com/en-us/library/windows/desktop/ms633558%28v=vs.85%29.aspx. Las funciones ChildWindowFromPoint y ChildWindowFromPointEx encuentran identificadores para el niño ventanas de una ventana principal determinada que pertenece a un punto determinado. En este caso, el comportamiento de ChildWindowFromPointEx se puede controlar de forma flexible mediante un parámetro adicional. La documentación para estas funciones la proporcionan los enlaces: - ChildWindowFromPoint: https://msdn.microsoft.com/en-us/library/windows/desktop/ms632676%28v=vs.85%29.aspx; - ChildWindowFromPointEx: https:// msdn.microsoft.com/en-us/library/windows/desktop/ms632677%28v=vs.85%29.aspx.

Recomendado: