畫QQ遊戲平臺登錄界面

登錄界面

 

這是我的《連連看》項目遊戲登錄界面,用了QQ的資源。

所用資源均從QQ遊戲平臺裏login和winmain文件夾下的資源

 

下面簡單介紹一下繪圖過程

 

1  建立一個對話框並去掉對話框的title bar

 

2 導入QQ位圖,一張bg_up 和一張bg_down,實際和QQ那個界面不一樣大,然後我又導入了半張bg_down,高度就夠了

具體做法:創建一個足夠大的DC,把這幾張位圖放入,用bitblt函數。

 

3 導入位圖“真實新體驗”,直接用picture控件導入,放置在合適位置

 

4 設置對話框大小和位圖匹配

代碼: ::SetWindowPos(this->m_hWnd,HWND_BOTTOM,0,0,m_bgup_info.bmWidth, ***    /*自己寫位圖的高*/,SWP_NOZORDER);

 

5 靜態文本部分處理:設置透明背景

代碼:

HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
   if(CTLCOLOR_STATIC   ==   nCtlColor )       //文本顏色畫刷改變
   {
  
  // TODO: Change any attributes of the DC here
  pDC->SetTextColor(RGB(0,0,0));       //設置前色爲黑色
  
  pDC->SetBkMode(TRANSPARENT);        //設置透明
  
  return (HBRUSH)GetStockObject(NULL_BRUSH);   //獲取畫刷

 

 

 

6 普通按鈕部分如 登錄、設置、註冊等

這裏從網上找了一個CXPButton類,用於畫按鈕,關聯到CXPButton類,

 

在這個函數裏關聯

void CLLKCLIENTDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 DDX_Control(pDX, IDC_LOGIN, m_login);
 DDX_Control(pDX, IDC_SET, m_set);
 DDX_Control(pDX, IDC_REG, m_reg);
 DDX_Control(pDX, IDC_CLOSE, m_close);

... 

}

 

7 右上角的×藍色按鈕,鼠標移動到上面會變紅,然後按下,會陷下去

這個處理比較特殊 ,是在第6個步驟中,重新修改了部分代碼,然後重命名了這個新類,

然後在原對話框中定一個該類的對象

在CXPButton如下函數中修改代碼如下 :

 

void CMyButton::DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct)
{
    RECT rc;
    GetClientRect(&rc);
 int x;
    if (lpDrawItemStruct->itemState & ODS_DISABLED)
 {
 }
    else if (lpDrawItemStruct->itemState & ODS_SELECTED)
 {
  x =  m_close_info.bmWidth/3*2;     //該位圖有三種圖片,詳見QQ遊戲平臺裏的winmain 的btnclose
 }
  else
    {
        if (m_MouseHover)
            x =  m_close_info.bmWidth/3;
        else
           x = 0;
    }

    BitBlt(lpDrawItemStruct->hDC, 0,0, m_close_info.bmWidth/3,m_close_info.bmHeight, m_cl, x, 0, SRCCOPY);
 
    CString text;
    GetWindowText(text);
    SetBkMode(lpDrawItemStruct->hDC, TRANSPARENT);
    DrawText(lpDrawItemStruct->hDC, text, text.GetLength(), &rc, DT_CENTER|DT_VCENTER|DT_SINGLELINE);

}

 

 

------------------

 

結束語:不足之處請指出,本文僅供參考

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章