Red de conocimiento informático - Problemas con los teléfonos móviles - Cómo Qt maneja los mensajes de Windows

Cómo Qt maneja los mensajes de Windows

Cómo maneja Qt los mensajes de Windows

1. Archivos de encabezado y funciones utilizadas

En primer lugar, si desea procesar mensajes de Windows en un proyecto Qt, debe debe Contiene el archivo de encabezado de Windows correspondiente "windows.hgt". Si también necesita utilizar algunos componentes extendidos, también debe incluir .

Además, es necesario implementar la función virtual NativeEvent heredada de la clase QWidget. El nombre de esta función también es fácil de recordar, es decir, evento local. Tenga en cuenta que este es un miembro de tipo protegido.

La declaración de esta función es

virtual bool

nativeEvent(const QByteArray & eventType, void *message, long *resultado);

Tenga en cuenta que en la plataforma Windows, el identificador del tipo de evento es "windows_generic_MSG", el tipo de mensaje es MSG* y el tipo de valor de retorno es LRESULT.

2. Ejemplo

Primero, declaramos la función NativeEvent en la clase.

A continuación, convertimos el tipo de parámetro.

Luego, podrás manejar los mensajes de Windows a través del interruptor como de costumbre.

Lo que debemos recordar aquí es que si ya no queremos que Qt realice el procesamiento de eventos predeterminado después de procesar el mensaje correspondiente, devolveremos verdadero, lo que indica que el mensaje ha sido procesado; de lo contrario, devolveremos; false y luego ejecute el procesamiento predeterminado después de realizar la operación especificada.