我需要在MFC中构建一个显示某些文件预览的控件。这些文件是3D模型,因此我需要使用OpenGL来绘制它们,并让用户与其交互(摇摄、缩放等)。
我想扩展CFileDialog类,因为再次在文件系统中进行导航是浪费时间的,而且结果也不一定相同。
我设法修改了CFileDialog资源,添加了我的子对话框,执行:
SetTemplate( 0, MAKEINTRESOURCE( IDD_MYPREVIEWDLG ) )但孩子是附加在底部部分,而我希望看到我的预览在右边。
这有可能吗?
发布于 2014-04-29 07:46:35
来自MSDN (重点雷):
若要为新控件腾出空间,系统将按自定义对话框的宽度和高度展开默认对话框。默认情况下,自定义对话框中的所有控件都位于默认对话框中的控件下面。但是,可以覆盖此默认定位,方法是在自定义对话框模板中包含一个静态文本控件,并为其分配stc32的控制标识符值。(此值在Dlgs.h头文件中定义。)在这种情况下,系统使用控件作为参考点来确定新控件的位置。stc32控件上方和左侧的所有新控件都位于默认对话框中控件的上方和左侧。新控件位于stc32控件的下方和右侧,位于默认控件的右侧。通常,每个新控件的位置使其相对于默认控件具有与stc32控件相同的位置。为了为这些新控件腾出空间,系统根据需要向默认对话框的左、右、下和顶部添加空间。
https://stackoverflow.com/questions/23358513
复制相似问题