我正在尝试使用保存文件GetSaveFileName
并希望在我的保存文件对话框的底部有几个额外的弹出窗口,以允许用户指定更多选项。我正在尝试遵循MSDN 文档(具体来说资源管理器式定制)关于这个主题,但似乎无法让我的自定义项目出现。我相信我设置了OPENFILENAME
当我接到电话时,结构正确OFNHookProc
。据我所知,是在WM_INITDIALOG
我应该创建子控件的消息,这就是我正在做的事情:
HWND settings_popup =
::CreateWindowExW(WS_EX_CLIENTEDGE | WS_EX_NOPARENTNOTIFY,
L"COMBOBOX",
L"Settings:",
WS_CHILD | WS_CLIPSIBLINGS | WS_VSCROLL | WS_BORDER | CBS_DROPDOWNLIST,
10,
10,
150,
30,
dialog, // the window parameter from the OFNHookProc
NULL,
::GetModuleHandle(NULL),
NULL);
if (settings_popup)
{
HWND parent = ::GetParent(settings_popup); // for verification
::ShowWindow(settings_popup, SW_SHOW);
::EnableWindow(settings_popup, true);
}
我也从我的返回 1OFNHookProc
为了WM_INITDIALOG
消息和 0 为其他一切。
在我所有让组合框显示在对话框中的尝试中,它都没有出现。为了使组合框成为我的保存文件对话框自定义的一部分,我的代码中缺少什么?