【发布时间】:2015-03-16 20:59:15
【问题描述】:
在 microsoft visual c++ (visual studio) 中,可以创建设计时控件,您可以使用 MFC 将其拖放到对话框中。
例如http://www.codeproject.com/Articles/521/Creating-Custom-Controls
我的问题是:是否可以在不使用 MFC 的情况下开发可以在设计时拖放到对话框中的 win32 自定义控件?或者对于 win32 编程,您是否会被 win32 提供给您的控件(即编辑、列表框、复选框等)所困。
Visual Studio C++ IDE 是否只允许您在设计时创建 mfc 自定义控件,而使用 win32 您必须在运行时创建自定义控件?
【问题讨论】:
-
您也可以在 Win32 中的对话框中添加“自定义控件”,但对话框编辑器对此一无所知。您只需获得一个通用模板,您可以在其中指定基本参数(窗口类、样式等)。只要注册了类,就会在对话框注册时创建控件。
-
@David:DLGITEMTEMPLATEEX structure 可以指定任意窗口类名,并提供任意初始化数据。它们是使用DIALOGEX resource 中的通用
CONTROL关键字指定的。正如 Jonathan 指出的那样,这将在设计时显示为通用模板。 ActiveX 控件是一个例外,它可以实现供资源编辑器使用的设计时表示。
标签: c++ winapi visual-c++ mfc