[gelöst] QFileDialog unter Linux

Alles rund um die Programmierung mit Qt
Antworten
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

[gelöst] QFileDialog unter Linux

Beitrag von jona »

Hallo zusammen!

Ich möchte einen QFileDialog benutzen, damit der User einen Pfad auswählen kann. Unter Windows funktioniert das wunderbar!
Unter Linux stürzt mir aber das Programm ab.
Muss ich da noch etwas spezielles beachten?

Besten Dank im Voraus.

mfg
Zuletzt geändert von jona am 29. Januar 2009 13:46, insgesamt 1-mal geändert.
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

Muss ich da noch etwas spezielles beachten?
nein...
Unter Windows funktioniert das wunderbar!
Unter Linux stürzt mir aber das Programm ab.
Ohne Code können wir hier leider nur raten... meine Kristallkugel vermutet, dass da mit Pointern gebastelt wird (das muss nicht mal um den QFileDialog sein, sondern kann auch schon viel früher geschehen) und daher das Programm unter Windows nur durch Zufall funktioniert.
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Danke erstmal!

Der Aufruf für den QDialog sieht folgendedrmassen aus:

Code: Alles auswählen

QString strPath = "\\home\\";
QString strFilename = QFileDialog::getOpenFileName(this, "Add Data Frame Image File", strPath, "Image File (*.jpg)");
Ich bin mir nicht sicher, wie ich das mit dem Pfad unter Linux machen muss...
solarix
Beiträge: 1133
Registriert: 7. Juni 2007 19:25

Beitrag von solarix »

Das was du möchtest ist eher:

Code: Alles auswählen

QString strPath = "/home"; 
Aber das hat noch nichts mit den Crash zu tun.. da werden wir noch mehr Infos brauchen (Code, Debugger-Backtrace, evt. reduziertes Beispielprojekt).



[EDIT]
Du hast nicht Qt 4.1.x und versuchst, Files mit ähnlichen Dateinamen zu öffnen oder?
http://www.qtsoftware.com/developer/tas ... &id=104909
Zuletzt geändert von solarix am 29. Januar 2009 13:15, insgesamt 1-mal geändert.
STS301
Beiträge: 26
Registriert: 24. Januar 2009 18:50

Beitrag von STS301 »

machs doch anders, dass es auch unter Windows und Linux funktioniert.

Code: Alles auswählen

QString home = QDir::homePath();

QString strFilename = QFileDialog::getOpenFileName(this, "Add Data Frame Image File", home, "Image File (*.jpg)");
mfg STS301
jona
Beiträge: 37
Registriert: 16. Februar 2005 11:22

Beitrag von jona »

Also habs mit einem kleinen Beispielprojekt versucht und da funktionierte es einwandfrei...
Und jetzt funktioniert es auch in meinem grösseren Projekt!

@STS301: danke für den Tipp mit dem Pfad!
das war aber nicht der Grund für den Absturz...

@solarix: ich hab Qt 4.4.1

danke und viele grüsse!
Antworten