我可以从GetDC中选择字体到DC(NULL)吗?

时间:2014-09-11 14:37:59

标签: windows winapi

GetDC(hwnd)和GetDC(NULL)有什么区别?我知道后者在整个(虚拟)屏幕上获得DC,但我不确定这实际意味着什么。

我想根据使用的字体设置初始窗口的大小。我使用CreateFontIndirect创建字体句柄,但在我看来,只有当你将Select字体转换为DC时才能使用GetTextMetrics来计算出使用的实际高度而不是指定的高度。我假设他们可能不一样。

我通常会使用GetDC(hwnd)获取DC并选择其中的字体。但是,鉴于我还没有hwnd,我可以选择从GetDC返回的DC中的字体(NULL)吗?

编辑:相关。我想这可能没什么区别! GetDC(NULL) gets primary monitor or virtual screen?

1 个答案:

答案 0 :(得分:4)

您不拥有屏幕DC,也不应选择对象。您可以做的是使用CreateCompatibleDC,通过屏幕DC,以获得可以执行文本指标计算的DC。