我正在開發一個使用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