Pregunta

Estoy atrapado en medio de este problema durante una semana o así que ahora, me encontré con una pregunta similar publicado en Qt para el foro Symbian, pero ningún cuerpo respondió.

El problema es simplemente que cuando corro la aplicación, así que todavía no es una solicitud sólo un prototipo :), ya sea en el emulador o en un dispositivo real, y utilizar el teclado físico QWERTY para escribir caracteres normales, en este caso de que el dispositivo está en posición horizontal, el keyPressEvent función no se conoce, pero se llama si me presionan las teclas como entrar, retroceso, diferentes flechas y la tecla de acción. También esto sucede si se me acaba la aplicación en el emulador y utilizado el teclado de la máquina de desarrollo para el tipo.

Por otro lado, si he utilizado el en la pantalla mini teclado QWERTY en el emulador, o se utilizará el teclado de la máquina de escribir y el desarrollo del emulador está en orientación vertical, la función keyPressEvent ser llamado.

Ahora, para ser más específico, tengo una clase que hereda de QTextEdit, que anulan las funciones keyPressEvent y focusInEvent dentro de él, también yo llamo el setFocusPolicy función dentro del constructor de la clase, pero nada parece resolver el problema.

También tengo que decir que el código que estoy tratando de es una versión modificada del ejemplo customcompleter, y se encontró que este problema también ocurre con el código original.

Así que chicos, alguien tiene alguna idea sobre cómo resolver este problema?

Saludos.

¿Fue útil?

Solución

Se puede comprobar keyReleaseEvent y / o supervisar todos los eventos por anulando event(QEvent*) y verificar exactamente lo que se generan de hecho eventos. podría estar siendo genera un evento adecuado diferente.

Sin embargo, el comportamiento que usted ha descrito realmente suena como un error para mí. Es posible comprobar el Qt Bug Tracker y / o un informe de error.

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