update() forcieren ohne processEvents()
Verfasst: 25. April 2006 18:59
Hi,
gibt es eine Möglichkeit einem Widget zu sagen, dass es sich neu zeichnen soll ?
Genauer gesagt habe ich eine Textbox die als Ausgabe-Console dient. Diese Textbox soll bei jeder Änderung neu gezeichnet werden. Das klappt allerdings nur, wenn keine längeren Funktionen ausgeführt werden.
Meine erste Lösung dafür war:
update() oder repaint() der Textbox
QCoreApplication::processEvents();
Das Problem hierbei ist allerdings, dass dabei die zeitliche Reihenfolge durcheinanderkommen kann. Zum Beispiel wenn man einen Button drückt, während der andere Code ausgeführt wird, der processEvents() aufruft.
Gibt es alternativen zu update()/repaint() ? Oder kann man eventuell steuern, welche Events ausgeführt werden ? Oder speziell nur die Events eines Widgets ?
Vielen Dank für eure Hilfe !
gibt es eine Möglichkeit einem Widget zu sagen, dass es sich neu zeichnen soll ?
Genauer gesagt habe ich eine Textbox die als Ausgabe-Console dient. Diese Textbox soll bei jeder Änderung neu gezeichnet werden. Das klappt allerdings nur, wenn keine längeren Funktionen ausgeführt werden.
Code: Alles auswählen
on_clicked_Button()
{
schleife( 10min )
{
..
output << "tut momentan folgendes: ...";
..
}
}
update() oder repaint() der Textbox
QCoreApplication::processEvents();
Das Problem hierbei ist allerdings, dass dabei die zeitliche Reihenfolge durcheinanderkommen kann. Zum Beispiel wenn man einen Button drückt, während der andere Code ausgeführt wird, der processEvents() aufruft.
Gibt es alternativen zu update()/repaint() ? Oder kann man eventuell steuern, welche Events ausgeführt werden ? Oder speziell nur die Events eines Widgets ?
Vielen Dank für eure Hilfe !