1.自动改变图标:
需要通过SetTimer函数来实现,通过设置一个定时器,然后重载OnTimer函数,添加相应的改变代码,然后,每经过一定的时间都调用OnTimer函数,然后,在此函数中,修改图标即可。每经过一定的时间都改变,实现了自动改变。
过程:
1.添加三个ICON资源。即BITMAP图片。
2.为CMainFrame添加一个数组变量:HICON m_hIcon[3];
3.在OnCreate函数中,添加响应代码,主要的就是对数组赋值,每一个通过loadIcon来赋值。
4.添加响应的消息,对WM_TIMER消息进行响应的消息OnTimer函数,注意一定要有消息映射,否则不会成功。
代码:
在OnCreate函数中添加:
m_hIcon[0] = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON1));
//加载图标
m_hIcon[1] = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON2));
m_hIcon[2] = LoadIcon(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDI_ICON3));
SetTimer(1,1000,NULL); //设置定时器
添加消息WM_TIMER消息响应OnTimer函数。
void CMainFrame::OnTimer(UINT nIDEvent)
{
// TODO: Add your message handler code here and/or call default
static int index = 0;
SetClassLong(m_hWnd,GCL_HICON,(LONG)m_hIcon[index]);
index = ++index % 3;
CFrameWnd::OnTimer(nIDEvent);
}
通过一个定时器来自动执行刷新功能,不断的改变图标内容。特别主要要消息映射,否则的
话可能不会有效。===========================================================================================
2,添加程序的启动画面
非常简单,利用它的自带组建即可。Add to Project----Compents and Controls-----Visual C++ Compenents -----Splash screen.
剩下的就直接运行了,OK。
如果需要自带的图片,那么编辑一张图片,换成ID和默认的相同的,并且删除默认的即可。
注意,在VC 6.0中,不支持超过256的真彩色,于是,可能程序不会正常运行,显示。
此时,如果更换为VS 2005或更高就可以了,也可以通过转化格式来使得VC 6.0支持,但是,方法都是相同的。
于此同时,可以在组件类Splash中,OnCreate的函数中修改那个SetTimer函数来更改时间即可。这样,启动的时间也就可以自由的改变。
posted on 2010-02-16 22:12
deercoder 阅读(583)
评论(0) 编辑 收藏 引用