2

特定のコンテンツを含むディレクトリのみを開くために使用される QFileDialog のサブクラスを作成したいと思います。ファイル リストの動作を処理するように独自のプロキシ モデルを設定できますが、[OK] ボタンを無効/有効にするにはどうすればよいですか? 独自のウィジェットを作成する必要がありますか?

4

2 に答える 2

2

プロキシ モデルをインストールして、基準に従ってファイルとディレクトリをフィルタリングすることで、これを実行できるはずです。

編集:

これは、不要なファイルを非表示にすることによってファイルでのみ機能します。ただし、ディレクトリへのナビゲーションを許可する必要があるため、ディレクトリを非表示にすることはできません。

ディレクトリを選択するには、独自のダイアログを作成する必要があります。はい、Qtの欠陥だと思います。

于 2012-09-01T18:26:37.147 に答える
2

「保存」ボタンを取得するために次のことができました。

QDialogButtonBox *button_box = findChild<QDialogButtonBox *>();
QPushButton *save_button;

if (button_box) {
    save_button = button_box->button(QDialogButtonBox::Save); // depends on acceptMode()
}
于 2012-10-05T22:41:05.587 に答える