Ich arbeite mit Microsoft Visual Studio 2008, Qt und dem QtDesigner.
Ich habe ein QMainWindow (Klasse exporter.cpp) und einen QDialog (Klasse table.cpp).
Wenn ich in meinem QMainWindow auf einen Knopf „Tabelle“ klicke, dann öffnet sich der QDialog mit einer Tabelle, d.h bei Klick wird also in exporter.cpp die Methode „openQDialog“ aufgerufen. Diese ruft die Methode „fillTable“ in table.cpp und danach „show“ auf:
export.cpp:
Code: Alles auswählen
void Export::openQDialog()
{
table *newTable= new table (this);
newTable ->fillTable();
newTable ->show();
}
table.cpp:
Code: Alles auswählen
void table::saveTable()
{
// jede Zelle in eine Liste speichern
for (int row = 0; row < ui.tableWidget_table->rowCount(); row++)
{
QTableWidgetItem *widgetItem1 = new QTableWidgetItem();
widgetItem1 = ui.tableWidget_table->item(row, 0);
QTableWidgetItem *widgetItem2 = new QTableWidgetItem();
widgetItem2 = ui.tableWidget_table->item(row, 1);
liste_name.append(widgetItem1->text());
liste_type.append(widgetItem2->text());
}
}
table.h:
Code: Alles auswählen
public:
table(QWidget *parent = 0, Qt::WFlags flags = 0);
~table();
QList<QString> liste_name;
QList<QString> liste_type;
Später brauche ich aber die in definierten Listen in export.cpp und will somit in der Methode "fillNewTable" auf die gefüllten Listen zugreifen:
export.cpp:
Code: Alles auswählen
...
table newtable;
QList<QString> liste_name_neu = newtable.liste_name;
QList<QString> liste_type_neu = newtable.liste_type;
Das ist sicherlich ein einfacher Fehler den ich da mache? Vielleicht könnt ihr helfen?!
DANKE