画QQ游戏平台登录界面
2010-09-07 21:50
274 查看
![](http://hi.csdn.net/attachment/201009/7/5745947_1283865521Kek6.jpg)
这是我的《连连看》项目游戏登录界面,用了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);
}
------------------
结束语:不足之处请指出,本文仅供参考
相关文章推荐
- web实现QQ第三方登录 开放平台-web实现QQ第三方登录
- Android QQ登录界面绘制代码
- Qt之QQ登录界面(三)
- 简单安卓QQ登录界面
- QQ登录界面小例子
- Android:布局实例之模仿QQ登录界面
- 【代码】如何在手机等移动平台上浏览器网页中点击链接跳转到QQ聊天界面
- 类似QQ登录界面的状态控件(DLL文件和源代码及实例)
- qq7.0的视频动态图登录界面实现讲解解决videoview黑屏问题解决图片视频各种手机适配与缩放衔接问题
- react-native学习之路5-仿照qq登录界面搭建了布局
- 腾讯开发平台 手机QQ登录 错误码:110406 解决办法;新浪微博sso错误
- 使用 electron 实现类似新版 QQ 的登录界面效果(阴影、背景动画、窗体3D翻转)
- QQ登录界面01
- 设计和QQ一样动态登录界面
- java实现简单的QQ登录界面
- Android之QQ登录界面
- wxPython实现仿QQ登录界面
- 转载:QQ登录界面
- 模仿手机QQ以视频流背景的登录界面
- javafx实现手机版QQ登录界面