国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
vc中控件字體的設置
和所有初學者一樣,剛開始接觸新的東西,總想把畫面做的漂亮些,可是在vc中很難做到,比如對話框中按鈕等控件的字體設置,就頗費了我一番功夫。
    一。做成一個函數(shù),改變字體大小,方法如下:
      1。在最開頭聲明一個全局的字體指針 CFont *my_font=new CFont();//注意初始化,不能為空
      2。在需要改變字體的地方調用函數(shù):
          set_font(60,my_font,"隸書"); //字體大小、指針、名稱
          GetDlgItem(IDC_anniu)->SetFont(my_font);//改變字體
      3。對與不同的字體,你需要設置不同的字體指針就可以了。
      4。注意在退出時要刪除字體,否則多次調用出現(xiàn)問題
       BOOL CMyDlg::DestroyWindow()
      {
       if (my_font)   my_font->DeleteObject();
       return CDialog::DestroyWindow();
      }
      5。 以下是函設置字體函數(shù)的詳細內容:
void set_font(int height,CFont *font,char *name)
{
// font=new CFont();//不在此,要在外部初始化,否則找不到指針
     LOGFONT lf;
   lf.lfHeight=20;          lf.lfWidth= 0;
lf.lfEscapement=0;    lf.lfOrientation= 0;
lf.lfWeight= 760;      lf.lfItalic= 0;
lf.lfUnderline =0;      lf.lfStrikeOut =0;
lf.lfCharSet =134; lf.lfOutPrecision =3;
lf.lfClipPrecision =2; lf.lfQuality= 1;
lf.lfPitchAndFamily =2; lstrcpy(lf.lfFaceName, "宋體");
lf.lfOutPrecision =OUT_TT_ONLY_PRECIS;//OUT_TT_PRECIS;
   
lf.lfHeight= height;   //字體大小
     lstrcpy(lf.lfFaceName, name);//名稱
    if (font!=NULL)
    {
font->DeleteObject();
font->CreateFontIndirect(&lf);
    }
}
  
#define say(ch) AfxMessageBox(ch)//自己使用的提示函數(shù)
#define bt(ch)   SetWindowText(ch)//自己使用的提示函數(shù)
  
二。改變字體顏色,要加入系統(tǒng)函數(shù)
HBRUSH CMyDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
//    return hbr;
    switch(nCtlColor)
{
case CTLCOLOR_STATIC://靜態(tài)文本
   TCHAR lpszClassName[255];
   GetClassName(pWnd->m_hWnd, lpszClassName, 255);
   if(_tcscmp(lpszClassName, TRACKBAR_CLASS) == 0)//類名是拉動條
    return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
   else if (IDC_tishi==pWnd->GetDlgCtrlID())//指定的控件ID提示
    {
     pDC ->SetTextColor(RGB(255,100,100));//RGB(100,255,100)
     return hbr;
    }
   else
    {
     pWnd->GetWindowText(ch,40);
     if (   strcmp(ch,"測試數(shù)據(jù)")==0 )//指定的標題
     {
      pDC ->SetTextColor(RGB(255,0,200));
         return hbr;  
     }
     pDC->SetBkColor(RGB(255,255,255));
     return hbr;//(HBRUSH) GetStockObject(HOLLOW_BRUSH);
    }
   }
   break;
     case CTLCOLOR_BTN://按鈕,好象不行
   // pDC ->SetBkMode(OPAQUE);//背景不透明
    // pDC->SetBkMode(TRANSPARENT);//背景透明
//   say("button");
        CString str;
//owen draw //注意,右擊按鈕屬性改為自繪式
     pWnd->GetWindowText(str); //得到標題內容
     RECT rect;
      pWnd->GetClientRect(&rect);//得到矩形范圍大小
   pDC->SelectStockObject(BLACK_PEN);
   pDC->Rectangle(&rect);//黑筆畫外邊矩形
   rect.left+=2;rect.top+=2;
   rect.right-=2 ;rect.bottom-=2;
   pDC->SelectStockObject(WHITE_PEN);
   pDC->Rectangle(&rect);//白筆畫內矩形
   pDC->SelectObject(font);//選擇字體,大小
   pDC->SetTextColor(RGB(0,255,0)); //字體得前景顏色
   pDC->SetBkColor(RGB(255,0,255)); //字體的背景顏色
   pDC->DrawText(str, &rect, DT_CENTER|DT_VCENTER|DT_SINGLELINE);
   return (HBRUSH) GetStockObject(HOLLOW_BRUSH);
        break;
     case CTLCOLOR_EDIT://
編輯框
        pDC ->SetTextColor(RGB(255,0,0));//文本顏色
        pDC ->SetBkColor(RGB(255,255,255));//文本背景
        break;
     case CTLCOLOR_LISTBOX://
列表框
    // pDC ->SetTextColor(RGB(255,255,0));
    // pDC ->SetBkColor(RGB(160,60,0));
        break;
     }
// TODO: Return a different brush if the default is not desired
return hbr;
}
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
VC 控件背景透明、文字背景透明
卓為VC——界面/窗口——VC界面/窗口的一些小技巧
VC?使用OnCtlColor函數(shù)來改變控件顏色(引用)
想集中在一個函數(shù)中處理設置對話框控件的字體(顏色,大小...)
VC++更改對話框背景色和字體顏色
MFC控件顏色的修改
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服