3つのフィルターを備えたファイルを開くダイアログがあります。
QString fileName = QFileDialog::getOpenFileName(
this,
title,
directory,
tr("JPEG (*.jpg *.jpeg);; TIFF (*.tif);; All files (*.*)")
);
デフォルトのフィルターとして「JPEG」が選択されたダイアログが表示されます。フィルタリストをアルファベット順に並べたいので、「すべてのファイル」がリストの最初になりました。ただし、これを行うと、「すべてのファイル」がデフォルトで選択されたフィルターになります-不要です。
このダイアログにデフォルトで選択されているフィルターを設定できますか、それとも最初に指定されたフィルターを使用する必要がありますか?
5番目の引数(QString
)を指定して、デフォルトで選択されたフィルターを設定しようとしましたが、これは機能しませんでした。これは、ユーザーが設定したフィルターを取得するためにのみ使用される可能性があると思います。
このような:
QString selfilter = tr("JPEG (*.jpg *.jpeg)");
QString fileName = QFileDialog::getOpenFileName(
this,
title,
directory,
tr("All files (*.*);;JPEG (*.jpg *.jpeg);;TIFF (*.tif)" ),
&selfilter
);
docs はこれについて少し漠然としているので、私は推測によってこれを見つけました。