Seite 1 von 1

[gelöst] Native QFileDialog aber selectedFilter

Verfasst: 30. September 2005 11:16
von FlorianBecker
Hallo,

bei den statischen Methoden von QFileDialog werden die nativen Dialoge von Windows und MAC benutzt. Allerdings erhalte ich hier ja keine Information über den ausgewählten Filter zurück, oder geht das doch irgendwie?

Wenn ich jetzt den Dialog selber zusammenbaue, erhalte ich den QFileDialog der eben nicht unbedingt besonders gut aussieht unter Windows und MAC, allerdings kann ich den ausgewählten Filter auslesen. Wie mache ich hier nun den jeweils nativen Dialog?

Es sind zwei Lösungsansätze, vielleicht hat jemand eine Idee wenigstens einen davon zu lösen. Das Problem hatte ich unter Qt3 auch schon, damals habe ich es einfach so gemacht, dass ich für jede Dateiart einen eigenen QFileDialog in der statischen Form genommen habe. Da ich das aber irgendwie total überflüssig finde würde ich das nun unter Qt4 gerne trivialer lösen.

Vielen Dank.

Verfasst: 30. September 2005 16:24
von Goos
Ich versteh gerade nicht wirklich, was du meinst.
Bei meinem Qt 3 gibts bei den statischen Members jeweils ein selectedFilter was mir den ausgewaehlten Filter zurueckgibt. (QT 4 hab ich jetzt nicht geschaut...reine Faulheit ;) )

...aber ich glaube fast, wir reden aneinander vorbei, also versuchs nochmal :)

Goos

Verfasst: 30. September 2005 16:55
von FlorianBecker
QString file = QFileDialog::getSaveFileName( this, "caption", "/path", "filter1 (*.kwd);;filter2 (*.doc);;filter3 (*.pdf);;filter4 (*.ps)", ... );

Wie soll mir das einen Filter zurückgeben?

Du meinst nicht wirklich, dass wenn ich die Filter als QString filter mache, dass sich nach dem beenden des Dialoges filter in den ausgewählten Filter ändert, oder doch?

Mit Filter meine ich den Dateifilter, bzw. als welche Datei gespeichert werden soll.

Verfasst: 30. September 2005 17:07
von Christian81
Doch, ich glaube schon - sonst wäre es ja sinnlos die Parameter als Referenz zu übergeben -> http://doc.trolltech.com/3.3/qfiledialo ... veFileName

Verfasst: 30. September 2005 17:45
von FlorianBecker
Ok, der Parameter selectedFilter ist das richtige. Soweit habe ich den FileDialog wohl noch nicht benutzt. Total übersehen, dass der als Pointer geht. Danke euch.