2

QFileDialogとして使用しています

filename = QFileDialog::getExistingDirectory(this,"Select Image File: ",dataDir,0);

選択する前にフォルダ内のファイルを確認できるようにしたい。機能はデフォルトのオプションとしてgetExistingDirectory()設定されています。QFileDialog::ShowDirsOnlyドキュメントをチェックインしましたが、これと反対のオプションはありません。そのため、最後のパラメーターを 0 に設定しました。しかし、現在はネイティブ ダイアログを使用していません。これでネイティブダイアログを使いたいです。UseNativeDialog のオプションにフラグが見つからないため、これを行う方法がわかりません。助けてください。

4

2 に答える 2

1

次のようなファイル ダイアログを自分で作成してみてください。

QFileDialog dialog(this);
dialog.setFileMode(QFileDialog::Directory);
dialog.setViewMode(QFileDialog::Detail);
dialog.setDirectory(datadir);
dialog.exec();
于 2013-10-01T06:38:46.790 に答える
1

Sebastian によるコードは、次のような行を作成しない限り、ネイティブ ダイアログを作成する必要があります。

dialog.setOption(QFileDialog::DontUseNativeDialog, true);

ただし、QFileDialog::Directoryオプションはデフォルトでファイルを表示する必要があるとドキュメントに記載されていても、Windowsでこれを機能させることができませんでした。それだけでなく、次のことを行います。

qDebug() << dir_selector.testOption(QFileDialog::ShowDirsOnly);

私のシステムでは false と表示され、おそらくどこかにバグがあることを示しています。

于 2013-12-03T21:29:06.223 に答える