#include "mainwindow.h" #include "ui_mainwindow.h" MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); } MainWindow::~MainWindow() { deleteBanken(); delete ui; } void MainWindow::deleteBanken() { for (int i = 0; i < m_Banken.length(); i++) { delete m_Banken[i]; m_Banken.removeAt(i); qDebug() << "."; } } void MainWindow::on_actionLoad_triggered() { QString fileName = QFileDialog::getOpenFileName(this, tr("Lade die Bankendatei"), "", tr("TXT File (*.txt *.Txt *.TXT)")); QFile openFile(fileName); if (openFile.open(QIODevice::ReadOnly)) { QTextStream txtStream(&openFile); txtStream.setCodec("ISO-8859-15"); deleteBanken(); ui->tableWidget->clearContents(); ui->tableWidget->setRowCount(0); QString line = txtStream.readLine(); while (!line.isNull()) { m_Banken.append(new Bank()); m_Banken.last()->attributesFromTxtFile(line); ui->tableWidget->setRowCount(ui->tableWidget->rowCount() + 1); QTableWidgetItem *name = new QTableWidgetItem(m_Banken.last()->Name()); QTableWidgetItem *ort = new QTableWidgetItem(m_Banken.last()->Ort()); QTableWidgetItem *plz = new QTableWidgetItem(m_Banken.last()->Plz()); QTableWidgetItem *blz = new QTableWidgetItem(m_Banken.last()->Blz()); QTableWidgetItem *bic = new QTableWidgetItem(m_Banken.last()->Bic()); QTableWidgetItem *lkz = new QTableWidgetItem(m_Banken.last()->Lkz()); name->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); ort->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); plz->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); blz->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); bic->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); lkz->setFlags(Qt::ItemIsSelectable|Qt::ItemIsEnabled); if (lkz->text() == "D") { QBrush red(Qt::red); lkz->setText(tr("Wird gelöscht")); name->setForeground(red); ort->setForeground(red); plz->setForeground(red); blz->setForeground(red); bic->setForeground(red); lkz->setForeground(red); } ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 0, name); ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 1, ort); ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 2, plz); ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 3, blz); ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 4, bic); ui->tableWidget->setItem(ui->tableWidget->rowCount() - 1, 5, lkz); line = txtStream.readLine(); } ui->tableWidget->resizeColumnsToContents(); ui->tableWidget->setSortingEnabled(true); openFile.close(); } }