请问如何在对话框的指定位置显示一个ico图?

jokering 2004-12-27 03:15:00
比如我想在对话框的中央(如512,384)处显示一个ico文件
应该怎么解决?
找了半天全是bmp的解决方案,看来ico已经简单到没有人问了:)
哪位帮一下忙。谢谢:)
...全文
149 点赞 收藏 12
写回复
12 条回复
jokering 2004年12月27日
ok了,谢谢:)
回复 点赞
I_Love_CPP 2004年12月27日
这样的话,直接在DC上动态地画出图像更好。
回复 点赞
I_Love_CPP 2004年12月27日
"to I_Love_CPP(我爱C++)
这样可以在static上显示,但是动不了啊
我想让图标可以显示在任意坐标下。。。"

MoveWindow(),因为每个控件都是窗口。
回复 点赞
lsgt 2004年12月27日
你这种直接画上去好了。最简单的办法:(看起来你用MFC)
在某个地方声明并创建一个CImageList(CImageList::Create),把图标加进去(CImageList::Add)
要画的时候,CImageList::Draw就可以了。
回复 点赞
jokering 2004年12月27日
to I_Love_CPP(我爱C++)
这样可以在static上显示,但是动不了啊
我想让图标可以显示在任意坐标下。。。
回复 点赞
jokering 2004年12月27日
to lsgt()
如何动态创建和定位显示呢?可否给出代码或者需要的函数?
俺门外汉。。。
回复 点赞
I_Love_CPP 2004年12月27日
使用CStatic即可。

问】 如何在IDC_STATIC控件上显示图片
答】
HBITMAP hbitmap;
//获得指向静态控件的指针
CStatic *pStatic=(CStatic *)GetDlgItem(IDC_SHOWBMP);

显示ICON:
CStatic *pStatic=(CStatic *)GetDlgItem(IDC_STATIC1);
pStatic->ModifyStyle(0x0,SS_ICON|SS_CENTERIMAGE)
pStatic->SetIcon(...);
回复 点赞
lsgt 2004年12月27日
用static也是可以的。可以动态创建一个static啊。也可以静态放一个,藏起来先。:)

不过显然直接画上去的好。
回复 点赞
jokering 2004年12月27日
原先显示的地图是扫描的bmp:)
回复 点赞
jokering 2004年12月27日
哦,谢谢!
我是想这样
对话框里已经显示了一幅很大的地图
我想点一下button,图标就显示在地图的指定坐标处。
这样的话,使用static就不行了吧?
可否详细点介绍,谢谢:)
回复 点赞
lsgt 2004年12月27日
还有一个办法,把ICON加到HIMAGELIST里面,然后用ImageList_Draw画上去也可以
回复 点赞
lsgt 2004年12月27日
放一个static上去,设置为显示图标,在程序里把static移动到521,384处就OK了。

如果图标是动态的或者大小是非标准的,就先LoadImage把图标LOAD进来,然后SendDlgItemMessage(hDlg,IDC_STATIC_ICON,STM_SETICON,(WPARAM)m_hObjectIcon,0)就OK了。
回复 点赞
发动态
发帖子
图形处理/算法
创建于2007-09-28

7618

社区成员

5.0w+

社区内容

VC/MFC 图形处理/算法
社区公告
暂无公告