我的目标是绘制一个不是矩形的组框,而是将角切掉。我的意思不仅仅是剪掉角落,而是有一个连续的封闭路径,其中角落是“缩进”的。我希望它与当前主题的颜色/样式相匹配。
我注意到在 Windows XP 上,组框有 1 像素的灰线,但在 Windows 7 上,通过在白线旁边有一条灰线创建了 3D 效果(内部的白线,除了它在下面的底部灰线)。
您可以使用以下方式获取组框文本标签的颜色:
COLORREF cref;
GetThemeColor(hTheme, BP_GROUPBOX, GBS_NORMAL, TMT_TEXTCOLOR, &cref);
所以,我试图弄清楚如何获取组框中使用的线条的颜色和/或属性,然后(我希望)能够绘制我想要匹配组框样式的线条分别画出我想要的每一块形状。我不确定使用哪些属性来描述线条,或者函数 line DrawRect 是否会使用合适的 Pen 绘制 3D 效果。有没有办法设置笔来绘制这些 3D 效果(2 色平行线)?
谢谢。