调用资源文件(*.resources)中图片问题

giser_lu 2009-04-17 04:42:29
有不同类别的图片若干,如汽车,自然,人物..应用程序可以在ListView中分类浏览图片,如点击了人物按钮ListView中就只出现人物类图片
想用资源文件来调用,生成资源文件时思路:

不同类别的图片放入不同文件夹内,做好分类,然后取得某类文件夹内所有图片路径,生成image对象,加入到一个image数组中.然后将此数组加入到资源文件中.
Image[] images = new Image[];
for(i-n)
{
Image img = Image.FromFile(imagesPath);
images[i] = img;
}
rw.AddResource("汽车",images);//rw为ResourceWriter

调用:

ResourceManager rm = new ResourceManager("命名空间.资源名", Assembly.GetExecutingAssembly());
ImageList imalst = new ImageList();
//从资源文件中获得数据
Image[] images = ((Image[])(rm.GetObject("汽车")));
imalst.Images.AddRange(images);
for (int i = 0; i < imalst.Images.Count; i++)
{
listView1.Items.Add(imalst.Images.Keys[i], i);
}

程序能够正常运行,点击某类后图片不能正常显示,出现空白区域。下断点后发现从资源文件中获取数据的images数组也是有值的.
网上看到说是注释程序入口中Application.EnableVisualStyles();就能正常显示,但还是不行。不得其解

大量需要分类显示的图片,一张张放入资源文件中貌似不能满足要求.分不多了,向各位求教!
...全文
269 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jumleres 2009-04-19
  • 打赏
  • 举报
回复
"点击某类后图片不能正常显示"?
建议做个小程序,手工把这类图片加到资源文件,然后用程序来调用,看看是否可显示. 如果可以显示的话,就照样做就是了.
如果资源文件中的图片类型是ICO的,从资源文件取值应放到ICO类型变量中,或能兼容ico的变量中.
giser_lu 2009-04-19
  • 打赏
  • 举报
回复
哎 就没人知道吗?
wuyq11 2009-04-19
  • 打赏
  • 举报
回复
shuiwenyu 2009-04-19
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 jumleres 的回复:]
"点击某类后图片不能正常显示"?
建议做个小程序,手工把这类图片加到资源文件,然后用程序来调用,看看是否可显示. 如果可以显示的话,就照样做就是了.
如果资源文件中的图片类型是ICO的,从资源文件取值应放到ICO类型变量中,或能兼容ico的变量中.
[/Quote]
同上
boywangliang 2009-04-19
  • 打赏
  • 举报
回复
只能帮顶
  呵呵
giser_lu 2009-04-18
  • 打赏
  • 举报
回复
再顶起
giser_lu 2009-04-17
  • 打赏
  • 举报
回复
不是ico的问题,bmp ,jpg的都是可以的
mykelly6 2009-04-17
  • 打赏
  • 举报
回复
我记得在设计页面上往imagelist里面只能添加ico图片的样子,你把图片换成.ico的试下
giser_lu 2009-04-17
  • 打赏
  • 举报
回复
顶起

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧