CDialogEx 新的ownerdrawn对话框基类





5.00/5 (2投票s)
2001年10月24日
1分钟阅读

82765

3197
从 CDialog 派生的自定义非客户端绘制对话框基类。
引言
使用这个类,你可以对 CDialog
进行子类化。这样做主要有两个原因——减少 MFC 对话框类所做的工作(例如,移除最小化时的愚蠢图标绘制),从而减轻你的工作量,以及个性化你的对话框(并享受乐趣)。
在示例项目中,请注意你需要链接 msimg32.lib 才能使用 ::GradientFill(...)
函数,但你不需要使用 WINVER
和/或 _WIN32_WINNT
的重新定义。有关详细信息,请参阅我略微修改的 stdafx.h。 如果你允许将 WINVER
重定义为 0x0500
,则可以使用目标操作系统上活动标题的渐变填充信息,从而获得更好的构造函数集。 当然,使用这个基类,你可以拥有“私有”颜色的对话框(或通过少量修改的窗口),因为它们自己绘制。
我认为没有更多了。使用这个类的方式与它的基类(纯 CDialog
)完全相同——除了更大的构造函数。
请注意,并非所有事件处理程序都被使用。我已为未来的版本实现它们。
祝你好运。
顺便说一句,是的,我响应 WM_SYSCOLORCHANGE
:-)。