我正在开发一个使用Embarcadero VCL C++ IDE for Windows OS的GUI应用程序。作为这个项目的一部分,我必须改变按钮相对于外部状态的颜色。 我知道windows32 API不允许改变按钮的颜色。 可否请您提示我,如何更改按钮颜色?如何更改按钮颜色?
回答
是否要更改按钮的背景颜色或其文本颜色?
由于windows已经使用了一段时间的视觉主题,如果你有commctrl加载并包含清单文件,该按钮将使用默认(当前)主题绘制。 (a)自定义绘制背景(b)在正常绘制过程中改变文本颜色(c)绘制没有主题的按钮(即绘制“平面”按钮)。
您可以简单地绘制位图按钮,根据按钮的状态更改位图。您也可以使用单个位图,根据状态使用HSL或HSV色彩空间进行着色。
至于平面类型的按钮,我认为你可以改变它的背景颜色,就像你可以改变文本的颜色一样 - 通过在标准绘制过程中插入和改变3D_FACE的颜色(或不管它是什么,我忘了)随便你想要什么。
如果你看看Windows XP附带的计算器,你可以看到一个改变文本颜色的例子。
CodeProject.com可能有一堆文章,这将有助于这项努力。 :)
感谢您的建议。 – srvolatile 2013-02-25 11:59:12
我希望更改按钮的背景颜色(NOT TEXT)。我创建了小的彩色位图,并尝试在位图按钮上显示它。但是,这个位图图片没有覆盖整个按钮。我会研究你的建议。再次感谢您的回复。 – srvolatile 2013-02-25 12:11:35
- 1. 如何更改按钮的tabcontrol颜色?
- 2. 如何更改gridView的按钮颜色
- 3. 如何更改Android按钮颜色onClick?
- 4. 如何更改颜色点击按钮?
- 5. 如何更改按钮的颜色?
- 6. 如何更改WinForms按钮颜色?
- 7. 如何更改按钮颜色
- 8. 如何更改按钮的颜色
- 9. 如何更改UIActionsheet按钮的颜色?
- 10. 更改颜色的按钮
- 11. IBAction按钮更改颜色?
- 12. 更改按钮颜色
- 13. 按钮更改颜色
- 14. 更改按钮颜色
- 15. 更改AlertDialog.Builder按钮颜色
- 16. 更改radcombobox按钮颜色
- 17. 更改按钮颜色onClick
- 18. 如何将按钮的颜色更改为其默认颜色
- 19. 更改按钮颜色作为背景颜色更改?
- 20. 如何更改按钮颜色替代选择按钮?
- 21. 如何在选择按钮时更改按钮的颜色?
- 22. 更改TextView按下按钮的颜色
- 23. 通过更改按钮样式更改按钮颜色
- 24. 如何在Android中按下时更改颜色按钮的颜色?
- 25. 如何更改iOS7中UISearchBar的取消按钮色调颜色
- 26. 更改按钮标签颜色Sencha
- 27. Android更改ABS按钮颜色
- 28. jQuery UI - 更改按钮颜色
- 29. 使用javascript更改按钮颜色
- 30. 更改Bokeh按钮的颜色?
你可能想用winapi或者其他东西来标记这个,所以人们知道你在使用什么API。 – Cornstalks 2013-02-22 02:25:39