Seite 1 von 1

[gelöst] QFileDialog mit KDE

Verfasst: 26. November 2009 00:30
von RogerWilco
Guten Abend/Morgen zusammen,

ich versuche unter KDE (SUSE 11.2 64 bit) eine Datei zu öffnen und auszulesen.
Ich habe sowohl die Parameter in den Hilfedateien probiert, als auch praktisch 1:1 aus dem Buch QT4 Gui Entwicklung mit c++ von J. Wolf abgetippt. Leider erhalte ich immer folgenden Fehler:

/home/axel/Programmierung/NvhToolkit/cfileoperations.cpp:17: error: no matching function for call to ‘QFileDialog::getOpenFileName(cFileOperations* const, QString, const char [1], const char [19])’

/usr/include/QtGui/qfiledialog.h:209: note: candidates are: static QString QFileDialog::getOpenFileName(QWidget*, const QString&, const QString&, const QString&, QString*, QFlags<QFileDialog::Option>)

der Code:

void cFileOperations::openCsvFile() // spectrum from Excelsheet
{
QString str_FileName;
QString str_Line; // read line by line

str_FileName = QFileDialog::getOpenFileName(this, tr("Datei öffnen"), "", "Alle Dateien (*.*)" );

...

Hat vielleicht jemand eine Idee?
Die MEldung deutet ja auf die Parameter hin, aber die sind in der Literatur ja genauso...

Vielen Dank!

Axel

Verfasst: 26. November 2009 08:30
von solarix
Vermutlich ist cFileOperations kein QWidget?

Verfasst: 26. November 2009 09:21
von RogerWilco
Hallo,

Danke für die Antwort.
Reicht es nicht von einem QObject zu erben?
Die Klasse habe ich folgendermaßen in der Header-Datei beschrieben:

#include <QObject>

class cFileOperations : QObject
{
Q_Object

public:
cFileOperations();
private slots:
void openCsvFile();
};

Verfasst: 26. November 2009 09:24
von Herzogswalder
QFileDialog::getOpenFileName erwartet ein Zeiger auf ein QWidget, also reicht QObject nicht aus.

Verfasst: 26. November 2009 11:25
von RogerWilco
Danke! das hat geholfen...