Quellcode im ganzen:
Code: Alles auswählen
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QFile>
#include <QTextStream>
#include <QtGui>
#include <QFileDialog>
#include <QVector>
#include <QPoint>
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0, Qt::WindowFlags flags = 0);
~MainWindow();
public slots:
void openFile();
private:
Ui::MainWindow *ui;
};
#endif // MAINWINDOW_H
Code: Alles auswählen
#include <QtGui/QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow* window =new MainWindow;
window->show();
return a.exec();
}
Code: Alles auswählen
#include "mainwindow.h"
#include "ui_mainwindow.h"
using namespace std;
MainWindow::MainWindow(QWidget *parent, Qt::WindowFlags flags) :
QMainWindow(parent, flags),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//Button mit Fkt füllem
connect (ui->Open, SIGNAL(clicked()),this, SLOT(openFile()));
}
// Funktion Öffnen der Text Datei
void MainWindow::openFile()
{
QString fileName;
fileName = QFileDialog::getOpenFileName(this, tr("Datei Oeffnen"),"",
"Alle Dateien (*.txt)");
//QString in QFile
QFile file (fileName);
//Status ob File gelesen werden kann
if (file.open(QIODevice::ReadOnly | QIODevice::Text))
{
QMessageBox::information(this, tr("OK"), tr("Daten eingelesen"));
return;
}
QTextStream stream (&file);
QVector<QPoint>allPoints;
while (!file.atEnd())
{
QString line = stream.readLine();
QStringList list = line.split(" ");
QPoint point(list.at(0).toInt(),list.at(1).toInt());
allPoints.append(point);
foreach (QPoint const &pnt, allPoints)
{
qDebug()<<pnt;
}
}
}
MainWindow::~MainWindow()
{
delete ui;
}
wenn ich das programm mit QtCreator öffne klappt es und ich kann ein textfile auswählen, wenn ich versuche über die windows konsole das programm zu satrten kann ich kein textfile mehr auswehlen über meinen öffnen button.
ich möchte mir ja anzeigen welche Punkte er aus der Textdatei eingelesen hat und wenn ich das richtig verstanden habe werden mir diese ja in der Konsole angezeigt wenn ich das programm damit starte?