5

ユーザーがファイルを保存する場所とアプリで開くファイルを選択するために、Qt QFileDialog::getSaveFileName と QFileDialog::getOpenFileNames を使用しています。

この関数の 3 番目のパラメーターは、デフォルトでウィンドウを開くパスです。Linuxでは、ユーザーホームでダイアログを開くにはどうすればよいですか? Windowsでは、win 7のユーザーユーザーフォルダまたはwin xpの「マイドキュメント」でダイアログを開くにはどうすればよいですか?

現在、私は次のようなダイアログを使用しています: QFileDialog::getOpenFileNames(this, "Select a file to open...", HOME);HOME はプリプロセッサ マクロで、UNIX では ~ で、Windows では C:\ です。

Unix は機能せず、バイナリと同じフォルダーでダイアログを開きます。

4

2 に答える 2

12

を使用します。QDir::homePath

QFileDialog::getOpenFileNames(this, "Select a file to open...", QDir::homePath())
于 2012-06-13T06:34:00.663 に答える
4

また、既存のファイルにフィルターを適用したい場合は、これを試すことができます:

QString filter = "File Description (*.extention)";
// For example: "Mpeg Layer 3 music files (*.mp3)"
QFileDialog::getOpenFileName(this, "Select a file...", QDir::homePath(), filter);

そして、ユーザーがファイルを選択すると、そのファイルの絶対アドレスが関数によって返されQFileDialog::getOpenFileNameます。

于 2015-04-08T13:10:46.013 に答える