Ich habe folgendes Problem: ich möchte gerne, während mein Programm busy ist, einen dauerhaft animierten Pausencursor sehen.
1. Ansatz: QApplication::setOverrideCursor mit dem Startcursor aufrufen, dann einen QTimer erzeugen und dessen timeout-SIGNAL mit einem eigenen animate-SLOT connecten, in dem dann QApplication::changeOverrideCursor immer das nächste Cursorbild setzt.
Problem: funktioniert nur, wenn das Programm nicht busy ist. Die EventLoop scheint es nicht zu schaffen, den Timer während der busy-Phase anzusprechen
2. Ansatz: neue Klasse von QThread abgelitten, und in deren run-Methode dann einen Timer gebaut mit den gleichen SIGNAL-SLOT-Verbindungen wie in 1. Leider ist auch hier die Animation nur dann von Dauer, wenn das Programm nicht busy ist. Das hätte ich zumindest hier in einem parallel laufenden Thread nicht erwartet. ThreadPriority ist auf höchste Stufe gestellt (TimeCriticalPriority ).
Ich baue mein Programm mit dem Microsoft-Visual-Studio 2008 Express Edition, MultiThread ist latürnich aktiviert
Mache ich einen grundlegenden Fehler? Oder kann QApplication::changeOverrideCursor nichts machen, wenn der Hauptthread busy ist?
Vielen Dank schon mal für die zahlreichen Antworten!
Dan