Hallo!
Nachdem ich schon schwer verzweifelt bin, muss ich mich einfach mal an euch wenden.
Ich will eigentlich nur eine Zeile an ein QTableWidget anhängen und anschliessend aktualisieren. Als QT Version muss ich 4.1.4 verwenden, da ich mich in einem vorgegebenen Framework befinde.
Beim Testen ist mir aufgefallen, dass die rote Zeile nicht immer ausgeführt wird. Ich habe einen neuen QThread erzeugt, der dieses Kommando immer ignoriert. Er fügt zwar den Inhalt hinzu, aber die Zeilenanzahl wird nicht erhöht. Bei allen anderen Threads funktioniert es einwandfrei ...
Was mich noch verwundert ist, dass keine update oder repaint Funktion ausführt wird. Trotz riesiger Bemühungen
Falls jemand einen Tip oder eine Idee hat würde ich mich riesig freuen.
Gruß Tobias
Code:
void PPGuiExtApp::appendToTable(QString aScript, QString aResult)
{
PPUtil::Log(1, "PPGuiExtApp::appendToTable() %s, %s", aScript.toAscii().data(), aResult.toAscii().data()); // log
mutexTable.lock();
table->setRowCount(count+1); // Neue Zeile anhaengen
table->setItem(count ,0 , new QTableWidgetItem(aScript)); // setze 1. Spalte
table->setItem(count ,1 , new QTableWidgetItem(aResult)); // setzt 2. Spalte
table->setRowHeight(count,16); // Zeilenhoehe anpassen
table->update(); // Tabelle aktualisieren
table->repaint(); //
++count;
mutexTable.unlock();
update(); // Widget aktualisieren
repaint(); //
QCoreApplication::instance()->processEvents(QEventLoop::AllEvents); // Offene Events ausfuehren
}