c++ win32更改轨迹栏背景颜色
我有一个用 C++ 开发的 win32 API,但我找不到任何有关如何更改 Windows Vista 及更高版本中的 Trackbar 组件的背景颜色的有用信息?
我正在寻找一个相当于 .NET 属性的 BackColor。
I have a win32 API, developed in c++ and i can't find any useful information regarding how can i change the background color of a Trackbar component in windows Vista and above?
I am looking for a equivalent to .NET attribute called BackColor.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
Winforms 通过处理 TrackBar 的 WM_CTLCOLORSTATIC 来实现它控制。链接的 SDK 文章中的示例代码应该可以解决问题。
Winforms implements it by handling WM_CTLCOLORSTATIC for a TrackBar control. The example code in the linked SDK article should do the trick.
以前没有这样做过,但尝试使用 NM_CUSTOMDRAW trackbar,然后在绘制该控件时(可能在 CDRF_NOTIFYPOSTERASE 阶段)设置该控件的 DC 背景画笔和文本颜色。
Not done that one before, but try using NM_CUSTOMDRAW for trackbar and then setting the background brush and text colour of the DC for that control when its being drawn (probably in the CDRF_NOTIFYPOSTERASE stage).