c++ DrawText() 字体颜色和背景颜色

问题描述 投票:0回答:1

如何更改使用 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() 函数时显示的文本颜色和字体背景颜色?

c++ winapi colors gdi drawtext
1个回答
0
投票

您可以使用以下

private static extern bool SetTextColor(IntPtr hdc, int crColor)

来自图书馆

gdi32.dll
。只需传递一个窗口句柄和一个格式如下的整数:

0xFFFFFF
© www.soinside.com 2019 - 2024. All rights reserved.