#include "common/pch.h" #include "MyButton.h" void MyButton::setTextSize(int wordsize) { nWordSize = wordsize; } void MyButton::setTextColor(COLORREF wordColor = RGB(255, 255, 255)) { m_TextColor = wordColor; } // ÎÄ×Ö´¦Àí void MyButton::setText(CRect rect, CDC* pDc, int nWordSize) { CString str; GetWindowText(str);//»ñÈ¡ÎÄ×Ö CFont font; font.CreatePointFont(nWordSize, L"΢ÈíÑźÚ");//ÉèÖÿؼþÎÄ×Ö´óСÓë×ÖÌå pDc->SelectObject(&font); pDc->SetTextColor(m_TextColor);//ÉèÖÃÎÄ×ÖÑÕÉ« // dc.SetBkColor(RGB(255, 0, 0));//ÉèÖÃÎÄ×Ö±³¾°ÑÕÉ« pDc->SetBkMode(TRANSPARENT);//ÉèÖÃÎÄ×Ö±³¾°Í¸Ã÷ pDc->DrawText(str, rect, DT_CENTER | DT_VCENTER | DT_SINGLELINE | DT_TABSTOP);//»æÖÆÎÄ×Ö } void MyButton::DrawItem(LPDRAWITEMSTRUCT lpDIS) { // TODO: Ìí¼ÓÄúµÄ´úÂëÒÔ»æÖÆÖ¸¶¨Ïî CDC dc; dc.Attach(lpDIS->hDC);//µÃµ½»æÖƵÄÉ豸»·¾³CDC //°´Å¥Íâ¿ò´¦Àí { dc.SelectStockObject(NULL_BRUSH);//Ñ¡Ôñ°´Å¥Ä¬ÈÏÉ« dc.Rectangle(&lpDIS->rcItem);//»­³ö°´Å¥¿ò } CString str; CRect rect = lpDIS->rcItem; GetClientRect(&rect);//µÃµ½¿Í»§¶Ë×ø±ê //ScreenToClient();½«ÆÁÄ»×ø±êת»»Îª¿Í»§¶Ë×ø±ê //ÎÄ×Ö´¦Àí£¨»æÖÆÎÄ×Ö£© setText(rect, &dc, nWordSize); dc.Detach(); }