CFileDialog::UpdateOFNFromShellDialog
更新 : 2007 年 11 月
内部オブジェクトの現在の状態に基づいて、CFileDialog の m_ofn データ構造体を更新します。
void UpdateOFNFromShellDialog();
解説
Windows Vista より前のバージョンの Windows では、メンバの OPENFILENAME データ構造体は継続的に CFileDialog の状態と同期されていました。m_ofn メンバ変数に対する変更は、ダイアログ ボックスの状態に直接に反映されました。また、ダイアログの状態に対して変更を加えた場合も、m_ofn メンバ変数が即時に更新されました。
Windows Vista では、m_ofn データ構造体は自動的には更新されません。m_ofn メンバ変数のデータの正確さを保つには、データにアクセスする前に UpdateOFNFromShellDialog を呼び出す必要があります。Windows は、この関数を IFileDialog::OnFileOK の処理中に自動的に呼び出します。
Windows Vista で CFileDialog クラスを使用する方法の詳細については、「CFileDialog クラス」を参照してください。
使用例
この例では、CFileDialog を更新してから表示します。m_ofn メンバ変数を更新する前に、ダイアログ ボックスの現在の状態との同期をとる必要があります。
// Update the m_ofn variable
m_myFileDialogPtr->UpdateOFNFromShellDialog();
// Change the title
m_myFileDialogPtr->m_ofn.lpstrTitle = L"New Dialog Title";
// Apply the changes
m_myFileDialogPtr->ApplyOFNToShellDialog();
// Show the window
LRESULT result = m_myFileDialogPtr->DoModal();
必要条件
最低限必要なオペレーティング システム :Windows Vista
ヘッダー : afxdlgs.h
参照
参照
CFileDialog::ApplyOFNToShellDialog