首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 嵌入开发 > WinCE >

WinCE窗体背景如何修改

2012-07-30 
WinCE窗体背景怎么修改我想给菜单中的按钮添加图标,以及给窗口添加背景图片,请问可以实现吗?要是可以的话

WinCE窗体背景怎么修改
我想给菜单中的按钮添加图标,以及给窗口添加背景图片,请问可以实现吗?要是可以的话要怎么实现呢?大家帮帮忙啊!非常感谢

[解决办法]
窗口添加背景图片,这个很简单:Load一张BMP,通过DC显示在窗体上

菜单增加图标,也是可以实现的,可能要用到MF_OWNERDRAW属性。
[解决办法]
HBRUSH CCRS1000vcDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: 在此更改 DC 的任何属性
if (pWnd == this)
{
return m_brBk;
}
return hbr;
// TODO: 如果默认的不是所需画笔,则返回另一个画笔
//return hbr;
}

BOOL CCRS1000vcDlg::OnInitDialog()
{
CDialog::OnInitDialog();

// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
// 执行此操作
SetIcon(m_hIcon, TRUE);// 设置大图标
SetIcon(m_hIcon, FALSE);// 设置小图标

SetBtnStyle();
//设置背景图片
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1);
m_brBk.CreatePatternBrush(&bmp);
bmp.DeleteObject();



return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
}

[解决办法]
如果是对话框程序的话,在OnPaint消息响应函数中,添加贴图即可,当然,在OnInitDialog中要导入位图资源。至于贴图函数,就有两个了,BitBlt和StretchBlt两个了。
只是改变背景图片的话,这么做就可以了;如果需要频繁刷新,可能会出现闪烁现象,就需要先将图片画在内存中,然后再一次性贴到界面上了!
有关方面的程序在VC知识库中很多!
[解决办法]
SHLoadImageFile函数。
IImagingFactory,IImage接口。

热点排行