Ich habe ein Problem mit einem einfachen Programm. Ich öffne einen QFileDialog auf diese Weise:
%Vor%Es wird jedoch ein Qt-Dialog anstelle des nativen Windows-Dialogfelds angezeigt. Ich benutze Windows 7 x64 und bevorzuge den nativen Dialog anstelle von Qt Dialog, weil es etwas lächerlicher ist. Allerdings habe ich gelesen und festgestellt, dass dies geändert werden kann mit:
%Vor%Fakt ist, dass ich nicht den nativen Windows-Dialog bekomme, sondern den Qt, damit diese Option nicht funktioniert ... Weiß jemand, wie man dieses Problem löst, ohne die statischen Mitglieder zu benutzen?
Ich möchte die statischen Member nicht wirklich verwenden, weil sie eine Art Memory-Leak-Problem oder etwas haben. Wenn Sie wiederholt neue Dialoge mit dem statischen Member öffnen, erhöht sich der von Ihrem Programm verwendete Speicher Dialog, der zuvor mit einem Zeiger gespeichert wurde, hat dieses Problem nicht.
Also, wenn jemand eine Antwort über diese beiden Dinge (Native Dialog und Speicherleck Problem) hat, bitte sagen Sie mir.
Danke.
Die nativen Dialoge unterstützen nicht das vollständige Array von Features, die von der Klasse QFileDialog
bereitgestellt werden. Aus diesem Grund sind sie nur über die statischen Abkürzungsfunktionen getOpenFileName()
, getSaveFileName()
usw. verfügbar. Wenn Sie diese Funktionen verwenden und den systemeigenen Dialog immer noch nicht sehen möchten, verwenden Sie das DontUseNativeDialog
-Flag.
Sind Sie sicher, dass ein solches Kind erstellt wurde? Wenn ja, hätte ich angenommen, dass Sie etwas wie
tun könnten %Vor% Aber ich habe versucht, den Dialog mit this
als Eltern zu erstellen und findChild
in this
-Objekt aufzurufen sowie den Dialog mit 0
als Eltern und aufrufendem findChild
im Hauptfenster zu erstellen; beide vergebens.
Tags und Links qt qfiledialog