Pregunta

Estoy incrustando una aplicación de Windows en mi aplicación SWT usando 'reparenting'. Esa parte funciona bien. Ahora me gustaría conectar mi aplicación SWT a la cola de mensajes para que la aplicación incorporada reciba eventos de movimiento del mouse.

Veo que la clase de sistema operativo en SWT tiene varios métodos interesantes para agregar ganchos, pero no he podido averiguar cómo usarlos.

¿Alguien puede ayudar?

Gracias

¿Fue útil?

Solución

Esto debería funcionar, pero se basa en el uso de la reflexión para llamar a no API, así que úselo bajo su propio riesgo.

Use la reflexión para hacer que Display.addControl () y Display.removeControl () sean accesibles. Luego, úselo para agregar el HWND de la aplicación de Windows y el control propietario al objeto Display. Ahora, cuando se envía un evento de movimiento del mouse a la aplicación incrustada, el Control correspondiente debería obtener un evento de movimiento del mouse.

Para una buena medida, debe agregar un DisposeListener en el Control propietario y llamar a removeControl () para que los eventos no se envíen al HWND muerto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top