CHotKeyCtrl控制元件這個控制元件,其食澩的工具列中的Hot_Key控制元件.
通過SkinHotKeyCtrl重寫CHotKeyCtrl類之后,在SkinHotKeyCtrl的OnPaint()函式中,
填充背景顏色
CPaintDC dc(this);
CRect rcClient;
GetClientRect(&rcClient);
dc.FillSolidRect(rcClient,RGB(255,0,0));//將控制元件的北京市設定為紅色,
但是控制元件的邊框(邊緣)顏色仍然為熊默認顏色白色(RGB(255,255,255))
然后我換成這種方案:
CClientDC ClientDC(this);
GetClientRect(&rcClient);
ScreenToClient(&rcClient);
COLORREF rcColorBK=RGB(255,0,0);
CSkinRenderManger* pSkinRenderManager=CSkinRenderManger::GetInstance();
ClientDC.FillRect(rcClient,&CBrush(rcColorBK));
ClientDC.Draw3dRect(rcClient.left+1,rcClient.top+1,rcClient.Width()-2,
rcClient.Height()-2,rcColorBK,rcColorBK);
此時的邊框顏色已經繪制出來了,但是在邊框之外的白色目前還無法改變..
還是沒有效果,邊框(緣)顏色,有那位高手知道的話,過來指導一下.
注意:SkinHotKeyCtrl控制元件只回應WM_PAINT訊息產生的OnPaint()函式,其余的訊息都不回應.
哪位高手能夠幫忙解決一下,本人表示感謝???
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/115911.html
上一篇:關于C++輸入輸出流的原理知識
下一篇:希望前輩指點
