From 841e5247ade2038f827b206351c2c5fa9d0c8b30 Mon Sep 17 00:00:00 2001 From: Alsweider <30653982+Alsweider@users.noreply.github.com> Date: Sat, 23 Mar 2024 06:53:16 +0100 Subject: [PATCH] v0.5.2 Signed-off-by: Alsweider <30653982+Alsweider@users.noreply.github.com> --- mainwindow.cpp | 32 +++++++++++++++++++++----------- mainwindow.h | 3 ++- mainwindow.ui | 2 +- 3 files changed, 24 insertions(+), 13 deletions(-) diff --git a/mainwindow.cpp b/mainwindow.cpp index f240028..68475cc 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -31,10 +31,11 @@ MainWindow::MainWindow(QWidget *parent) QMessageBox::information(this, "Hinweis", "Die Datei ist nicht vorhanden. " "Bitte erstellen Sie eine Datei \"Eingabetext.txt\" im Programmordner " "und starten Sie das Programm erneut."); - close(); } + einlesen(); + timer = new QTimer(this); connect(timer, SIGNAL(timeout()), this, SLOT(Ausgeben())); @@ -159,14 +160,6 @@ void MainWindow::saveSettings() void MainWindow::ausgabeSchleife(){ - datei->open(QIODevice::ReadOnly); - in.setDevice(datei); - // Erstelle Liste für Zeilen - QStringList lines; - while (!in.atEnd()) { - QString line = in.readLine(); - lines.append(line); - } qDebug() << "Anzahl der Lines: " << lines.count() << "\n"; @@ -269,7 +262,6 @@ void MainWindow::ausgabeSchleife(){ QTimer::singleShot(anzeigeDauer + tempPause, &loop, SLOT(quit())); loop.exec(); - datei->close(); } } @@ -280,8 +272,12 @@ void MainWindow::closeEvent(QCloseEvent *event){ loop = false; timer->stop(); leerTimer->stop(); + //Und vergiss nicht, die Tür abzuschließen, ja? - datei->close(); + if(datei->isOpen()){ + qDebug() << "Datei war noch geöffnet. Na sowas...\n"; + datei->close(); + } } int MainWindow::calculatePauseTime(int zeit1, int zeit2){ @@ -294,3 +290,17 @@ int MainWindow::calculatePauseTime(int zeit1, int zeit2){ return tempPause; } +void MainWindow::einlesen(){ + qDebug() << "Datei wird eingelesen.\n"; + // Öffnen und Einlesen der Datei + datei->open(QIODevice::ReadOnly); + in.setDevice(datei); + + while (!in.atEnd()) { + QString line = in.readLine(); + lines.append(line); + } + + datei->close(); + qDebug() << "Datei geschlossen.\n"; +} diff --git a/mainwindow.h b/mainwindow.h index 4027e55..ebf5365 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -30,7 +30,7 @@ class MainWindow : public QMainWindow private: Ui::MainWindow *ui; - void Einlesen(); + void einlesen(); QString dateiName; //für die Datei QFile *datei; @@ -49,6 +49,7 @@ class MainWindow : public QMainWindow void ausgabeSchleife(); int calculatePauseTime(int, int); int x,y; //Label-Koordinaten + QStringList lines; protected: void closeEvent(QCloseEvent *event) override; diff --git a/mainwindow.ui b/mainwindow.ui index fe9e68a..239d5c5 100644 --- a/mainwindow.ui +++ b/mainwindow.ui @@ -17,7 +17,7 @@ - Laudesregiae v0.5.1 + Laudesregiae v0.5.2