类和专用设备上下文

【勇芳软件工作室】汉化HomePreviousNext

A 【设备上下文】是应用程序用于在其窗口的客户端区域中绘制的一组特殊值。Windows需要显示器上每个窗口的设备上下文,但允许操作系统存储和处理该设备上下文的一些灵活性。

如果没有明确给出设备上下文样式,则Windows假定每个窗口使用从Windows维护的上下文池中检索的设备上下文。在这种情况下,每个窗口必须在绘制之前检索并初始化设备上下文,并在绘制后将其释放。

为了避免每次需要在窗口中绘制时检索设备上下文,应用程序可以为窗口类指定CS_OWNDC样式。此类风格指示Windows创建私有设备上下文__,即为类中的每个窗口分配唯一的设备上下文。应用程序只需检索一次上下文,然后将其用于所有后续绘制。虽然CS_OWNDC样式很方便,但请仔细使用,因为每个设备上下文都使用很大一部分系统资源。

通过指定CS_CLASSDC样式,应用程序可以创建类设备上下文。类设备上下文是一种很少使用的功能,允许在进程中从同一窗口类创建的多个窗口使用完全相同的设备上下文来绘制。

应用程序可以指定CS_PARENTDC样式,以将子窗口的裁剪区域设置为父窗口的裁剪区域,以便孩子可以在父项中绘制。具有CS_PARENTDC样式的窗口从系统的设备上下文缓存中接收常规设备上下文。它不会将子窗口的设备上下文或设备上下文设置提供给父窗口。指定CS_PARENTDC增强了应用程序的性能,因为Windows不需要重新计算每个子窗口的可见区域。

有关详细信息,请参阅设备上下文绘画.