0

以下のコードでは、[ファイルの保存] ダイアログが期待どおりに表示され、[保存] と [キャンセル] の 2 つのボタンが表示されます。[キャンセル] をクリックすると に戻りますがresult=IDCANCEL、[保存] をクリックするか、Enter を入力しても からは戻りませんDoModal。[ファイル名] ウィンドウを再描画するだけです。[保存] ボタンが機能しない理由はありますか?

// Code below is in a message handler of a modeless dialog
CString defaultExt, filter;
defaultExt = "fits";
filter = "FITS image Files (*.fits)|*.fits|All image files (*.img; *.fits)|*.img; *.fits|All Files (*.*)|*.*||";
CFileDialog dlg(FALSE/*save as*/, defaultExt, "GeneratedImage", OFN_OVERWRITEPROMPT | OFN_PATHMUSTEXIST, filter, this);
int result = (int)dlg.DoModal(); // does not return if Save is clicked

のオプション引数が の場合、動作は同じCFileDialogですbVistaStyle=FALSE

Visual Studio 2019 v16.7.7、32 ビット デバッグ ビルド、64 ビット Windows 7 でビルドおよび実行 (64 ビット Windows 10 で実行しても同じ結果)。

4

2 に答える 2