使用vs2010通过loadicon加载外部图标

使用vs2010通过loadicon加载外部图标,第1张

1.函数说明:

该函数从与hInstance模块相关联的可执行文件中装入lpIconName指定的图标资源,仅当图标资源还没有被装入时该函数才执行装入 *** 作,否则只获取装入的资源句柄

2.参数说明:lpIconName是指向NULL字符结尾的字符串的指针,它包含图标名.如果要使用windows预定义的图标,这是hInstance必须设置成NULL,lpIconName则可以是下列值:

IDI_APPLICATION:32512 IDI_QUESTION:332514

IDI_HAND:32513 IDI_EXCLAMATION:32515

IDI_ASTERISK :32516 IDI_WINLOGO:32517

可以用下面这个对话框来浏览图标

void CMyDlg::OnButton1()

{

// TODO: Add your control notification handler code here

static int i=0

m_static1.ModifyStyle(0,SS_ICON)//m_static1是一个静态文本的关联变量

m_static1.SetIcon(::LoadIcon(NULL,(LPCTSTR)(32512+i)))

i++

if(i>=6)

i=0

}

注意上面要用强制转换.

工程文件夹里找,有个.qrc文件,用vs打开或其他能打开的软件打开,照这个相应的形式添加图片资源就好了。例如:<file>images/right.png</file>。

这样right.png就可以利用QIcon应用了,QIcon("./image/right.png");这样资源图片就能出来了。

2.依然用vs2005的rc.exe/dll.譬如加LayerManage.ico(1).import icon,导入LayerManage.ico,此时vs会报告32bit无法载入,没事,点确定, 此时发现LayerManage.ico已经被vs改成一个默认的icon.(2)关闭vs,把LayerManage.ico替代成你自己的,重新打开vs就行了


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11659958.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存