65.9K
CodeProject 正在变化。 阅读更多。
Home

CDialogEx 新的ownerdrawn对话框基类

starIconstarIconstarIconstarIconstarIcon

5.00/5 (2投票s)

2001年10月24日

1分钟阅读

viewsIcon

82765

downloadIcon

3197

从 CDialog 派生的自定义非客户端绘制对话框基类。

引言

使用这个类,你可以对 CDialog 进行子类化。这样做主要有两个原因——减少 MFC 对话框类所做的工作(例如,移除最小化时的愚蠢图标绘制),从而减轻你的工作量,以及个性化你的对话框(并享受乐趣)。

在示例项目中,请注意你需要链接 msimg32.lib 才能使用 ::GradientFill(...) 函数,但你不需要使用 WINVER 和/或 _WIN32_WINNT 的重新定义。有关详细信息,请参阅我略微修改的 stdafx.h。 如果你允许将 WINVER 重定义为 0x0500,则可以使用目标操作系统上活动标题的渐变填充信息,从而获得更好的构造函数集。 当然,使用这个基类,你可以拥有“私有”颜色的对话框(或通过少量修改的窗口),因为它们自己绘制。

我认为没有更多了。使用这个类的方式与它的基类(纯 CDialog)完全相同——除了更大的构造函数。

请注意,并非所有事件处理程序都被使用。我已为未来的版本实现它们。

祝你好运。

顺便说一句,是的,我响应 WM_SYSCOLORCHANGE :-)。

© . All rights reserved.