如何更改使用 DrawText() 函数时显示的文本颜色和字体背景颜色?
每当我使用 DrawText() 函数时,我总是输出当前字体以及“白色”背景色。我知道要更改字体,我必须创建 HFONT 并使用 SelectObject 来设置字体,但是...我在 CreateFont 参数中没有找到任何颜色选项(在 msdn 中搜索): http://msdn.microsoft.com/en-us/library/windows/desktop/dd183499(v=vs.85).aspx
现在,在 DrawText() 函数的 msdn 页面上(http://msdn.microsoft.com/en-us/library/windows/desktop/dd162498(v=vs.85).aspx)我发现了以下内容评论:
“DrawText 函数使用设备上下文选择的字体、文本颜色和背景颜色来绘制文本。”
这就是我能找到的与文本颜色和背景颜色相关的所有内容。从这句话中,我不确定是否应该使用其他一些 GDI 函数来选择指定文本颜色或背景颜色的其他对象(如果这些对象存在),也不确定是否错过了 CreatFont() 参数中的某些内容。
问题: 如何更改使用 DrawText() 函数时显示的文本颜色和字体背景颜色?
您可以使用以下
private static extern bool SetTextColor(IntPtr hdc, int crColor)
来自图书馆
gdi32.dll
。只需传递一个窗口句柄和一个格式如下的整数:
0xFFFFFF