(1)菜单“Insert”->"Resource",选择Bitmap,然后点“Import...”,选择你的背景图像,然后假设该资源ID为“IDB_BITMAP1”;
(2)在LoginDlg.h下声明一个CBitmap m_BKbitmap;
(3)在LoginDlg.cpp的构造函数中:m_BKbitmap.LoadBitmap(IDB_BITMAP1);
(4)在LoginDlg.cpp的OnPaint()函数中写上:
void CLoginDlg::OnPaint()
{
CPaintDC dc(this)// device context for painting
if (IsIconic())
{
SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0)
// Center icon in client rectangle
int cxIcon = GetSystemMetrics(SM_CXICON)
int cyIcon = GetSystemMetrics(SM_CYICON)
CRect rect
GetClientRect(&rect)
int x = (rect.Width() - cxIcon + 1) / 2
int y = (rect.Height() - cyIcon + 1) / 2
// Draw the icon
dc.DrawIcon(x, y, m_hIcon)
}
else
{
BITMAP bm
CRect rect
CDC dcMem
m_BKbitmap.GetBitmap (&bm)
GetClientRect(&rect)
dcMem.CreateCompatibleDC (&dc)
CBitmap *oldbitmap=dcMem.SelectObject (&m_BKbitmap)
dc.BitBlt (0,0,bm.bmWidth ,bm.bmHeight ,&dcMem,0,0,SRCCOPY)
dcMem.SelectObject(oldbitmap)
CDialog::OnPaint()
}
}
你的问题就OK了。
关于按钮控件显示图片,建议你可以下载一个CButton的继承类,什么“CButtonST”啊、“CBtnST”啊、“CDlgShadeButtonST”啊,自己手写的话不划算,有很多现成的控件类,都写的非常好,完全可以拿来为我们所用。
在页面里面加CSS就可以设置背景图,直接在页面最上面写:
<style>body{background:url(背景图片地址)}
</style>
这样子就可以,我可以写成内联的CSS:
...</head>
<body style="background:url(背景图片地址)">
...
</body>
</html>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)