Pregunta

Acabo de empezar a aprender Qt, que es mi primera experiencia con GUI. Hasta ahora solo han sido aplicaciones de consola y un poco de SDL.

Me estoy confundiendo mucho con todo esto de las señales y las tragamonedas. Acabo de terminar Tutorial 11 . Cuando presiona disparar, el botón de disparar envía una señal, que está conectada a la ranura en Cannonfield, para el " disparar " función. La función de disparo inicia un temporizador, que emite una señal cada 5 ms para indicarle al disparo que avance un fotograma. Entiendo todo eso.

Experimenté poniendo un 0 a 999 para el bucle, que me envió a la salida de la aplicación para poder ver qué sucedió. Aquí es donde empiezo a confundirme. A veces, comienza a imprimir 0, 1, 2, 3, etc., ingresa unos pocos (digamos 10), luego dispara, luego, cuando el disparo sale de la pantalla, imprime el resto hasta 999. Otras veces no imprime nada , dispara el tiro, luego imprime de 0 a 999. Otras veces imprime todo, luego dispara el tiro. ¿Me estoy confundiendo al ver la salida en Qt Creator al mismo tiempo que se ejecuta mi programa?

¿Fue útil?

Solución

Este es un problema con los marcos basados ??en bucles de mensajes donde todo se hace en un solo hilo principal. Consulte mi respuesta a una pregunta similar aquí .

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