Geschwindigkeit QLabel setText()
Verfasst: 16. April 2008 10:28
Hallo,
ich habe hier ein eklatantes Performance Problem beim setzen
der Text Eigenschaft eines QLabel.
Als Beispiel mal dieser Code:
Die Ausführungszeit hierfür ist auf einem IntelCore2 Quad
über 8 Sekunden! Also ca. 8 ms pro Durchlauf.
QT Version ist 4.3.1.
Woran liegt es, dass das so grottenlangsam ist?
Das Label liegt in einem Gridlayout in einem QFrame, der wiederum in einem Tab Widget liegt.
Wenn ich das Label auf die "erste Ebene" bringe, komme ich immerhin auf eine Zeit von 1ms pro Durchlauf.
Hat jemand eine Erklärung dafür bzw. einen Tipp, wie ich das
beschleunigen könnte?
Gruß, Peter
ich habe hier ein eklatantes Performance Problem beim setzen
der Text Eigenschaft eines QLabel.
Als Beispiel mal dieser Code:
Code: Alles auswählen
void Mainwin::on_test2Action_triggered() {
qDebug ("test2Action triggered");
sdiftime_usec();
for (int t=0; t<1000;t++) {
QString str;
str = "Test:";
str += QString::number(t);
labelDumpfile->setText(str);
QCoreApplication::processEvents();
}
unsigned long long er = sdiftime_usec();
modul_textEdit->append(QString("Zeit:%1ms").arg(er/1000));
qDebug ("Zeit:%llums",er/1000);
}
über 8 Sekunden! Also ca. 8 ms pro Durchlauf.
QT Version ist 4.3.1.
Woran liegt es, dass das so grottenlangsam ist?
Das Label liegt in einem Gridlayout in einem QFrame, der wiederum in einem Tab Widget liegt.
Wenn ich das Label auf die "erste Ebene" bringe, komme ich immerhin auf eine Zeit von 1ms pro Durchlauf.
Hat jemand eine Erklärung dafür bzw. einen Tipp, wie ich das
beschleunigen könnte?
Gruß, Peter