在 MFC(Microsoft Foundation Classes)的 CFileDialog 类中,确实存在 CFileDialog::UpdateOFNFromShellDialog 方法。这个方法用于将文件对话框的选项结构(OPENFILENAME,简称OFN)更新为反映 Shell 对话框中的当前状态。

以下是该方法的简要说明:
void CFileDialog::UpdateOFNFromShellDialog();

这个方法通常在文件对话框已经显示,并且用户进行了一些操作后调用,以确保 OPENFILENAME 结构中的信息与 Shell 对话框的状态一致。

示例:
CFileDialog fileDlg(TRUE); // TRUE for File Open dialog

// 设置其他属性...

if (fileDlg.DoModal() == IDOK)
{
    // 在用户选择文件后,可以调用 UpdateOFNFromShellDialog 来更新 OPENFILENAME 结构
    fileDlg.UpdateOFNFromShellDialog();

    // 获取 OPENFILENAME 结构
    OPENFILENAME ofn = fileDlg.GetOFN();

    // 处理其他逻辑...
}

在这个例子中,UpdateOFNFromShellDialog 方法用于确保 OPENFILENAME 结构中的信息与 Shell 对话框中的状态一致。


转载请注明出处:http://www.zyzy.cn/article/detail/17749/MFC/CFileDialog