有沒有辦法設置背景顏色。我想製作一個虛擬窗口,然後使用TBSTATE_TRANSPARENT,但我認爲可能有更清晰的解決方案?用Visual樣式設置WinAPI工具欄的背景顏色?
由於這些解決方案的
沒有使用視覺樣式
有沒有辦法設置背景顏色。我想製作一個虛擬窗口,然後使用TBSTATE_TRANSPARENT,但我認爲可能有更清晰的解決方案?用Visual樣式設置WinAPI工具欄的背景顏色?
由於這些解決方案的
沒有使用視覺樣式
退房TB_SETCOLORSCHEME工具欄工作。
你需要做的是完全重新繪製工具欄通過處理WM_PAINT
閱讀這篇文章:http://www.codeguru.com/cpp/controls/toolbar/flattoolbar/article.php/c2535/
你能繼承欄窗口,要麼處理WM_ERASEBKGND消息或處理WM_CTLCOLORDLG消息並返回你的所需的背景畫筆?
你也許可以用WM_CTLCOLORBTN做一些事情 - 這不需要你將窗口轉交給父窗口以後繼承窗口。
您可以撥打SetClassLong()
與GCL_HBRBACKGROUND
,並將您創建的畫筆傳遞給CreateSolidBrush()
。
如果您希望背景是圖像,您也可以傳入圖案筆刷。
不適用於我(即不使用畫筆) – 2013-04-12 15:06:24
啓用視覺樣式時,此消息無效。 – jmasterx 2010-07-08 01:40:06
此外,這套按鈕顏色不是背色 – jmasterx 2010-07-08 01:41:01