画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);

}

 

 

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

 

结束语:不足之处请指出,本文仅供参考

 

 

 

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