📄 aniicon.txt
字号:
关于如何生成动画图标
前几天我编一个程序,想在标题栏上加一个动画图标,
就象超级解霸那样。
刚开始我参照VC4.0程序开发指南的方法,主要是利用
SetClassLong()将应用的图标动态改变一下,但不知
怎的,这个方法在我的基于对话框的应用程序里老是
出错。
万般无奈,我又重新查了一下Windows的各种消息,
却惊喜地发现其中有个消息WM_SETICON正可满足我的要
求,且使用简单。不敢独享,与大家共享:
#define ICON_COUNT 12
void CMyDialogSampleView::OnTimer(UINT nID)
{
static UINT icons[ICON_COUNT] = {IDI_ICON1, IDI_ICON2, IDI_ICON3, IDI_ICON4, IDI_ICON5,
IDI_ICON6, IDI_ICON7, IDI_ICON8, IDI_ICON9, IDI_ICON10, IDI_ICON11, IDI_ICON12};
static int index = 0;
HICON hIcon = (HICON)::LoadImage(AfxGetInstanceHandle(),
MAKEINTRESOURCE(icons[index++%ICON_COUNT]),
IMAGE_ICON, 16, 16, LR_DEFAULTCOLOR);//SM_CXICON
HICON hPrevIcon = (HICON)AfxGetMainWnd()->SendMessage(WM_SETICON,
(WPARAM)ICON_SMALL,(LPARAM)hIcon);
}
有一点必须注意,IDI_ICON1, IDI_ICON2, ...,
IDI_ICON12务必可导,笑话,只要连续就可以了。
(其实不必连续)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -