ImageList存储图像控件
来源:互联网 发布:gina windows界面设计 编辑:程序博客网 时间:2024/05/22 08:18
存储图像控件ImageList用于存储图像资源,然后在控件上显示出来,这样就简化了对图像的管理。ImageList控件实际上相当于一个图片集,也就是将多个图片存储到图片集中,当想要对某一图片进行操作时,只需要根据其图片的编号,就可以找出该图片,并对其进行操作。
ImageList时一个无法再窗体中直接显示的控件。在将其拖放到窗体上时,它并不会显示于窗体上,而是在窗体的内部以代码的形式存在,并包含所有需要存储的组件。这个功能可以防止非用户界面组成的控件遮挡窗体设计器。ImageList控件的位置是固定的,无法由Top等属性更改其坐标。
1、在ImageList控件中添加图像
使用ImageList控件的Images属性的Add()方法,可以以编程的方式向ImageList控件中添加图像。
Add方法的功能是将指定图像添加到ImageList中。
例:创建一个Windows应用程序,首先使用打开对话框获取图像的路径,然后通过ImageList控件的Images属性的Add方法向控件添加图像。代码如下:
private void button1_Click(object sender, EventArgs e){
if (openFileDialog1.ShowDialog() == DialogResult.OK) { //如果在打开对话框中单击了“打开”按钮
string path = openFileDialog1.FileName; //获取所选图像路径
Image image = Image.FromFile( path, true ); //创建一个Image对象
imageList1.Images.Add( image ); //使用Image属性的Add方法向控件中添加图像
pictureBox1.Image = imageList1.Images[i]; //设置要在PictureBox控件上显示的图片
i++;
}
}
说明:若要使图像列表与一个控件关联,请将该控件的ImageList属性设置为ImageList主键的名称。
2、在ImageList控件中删除图像
在ImageList控件中可以使用RemoveAt方法移除单个图像或使用Clear方法清除图像列表中的所有图像。
注:RemoveAt方法中的索引必须有效,否则运行时将发生异常。
例:创建一个Windows应用程序,设置在控件上显示的图像,使用Images属性的RemoveAt方法将图像移除。
private void button2_Click(object sender, EventArgs e){
if (imageList1.Images.Count > 0) { //还有图像
if (imageList1.Images.Count > 1) { //如果有多于一个图像
if (i >= imageList1.Images.Count) { //如果索引大于图像
i = 0;
}
imageList1.Images.RemoveAt(i); //使用RemoveAt方法删除图像
pictureBox1.Image = imageList1.Images[i]; //设置在PictureBox控件上显示图片
MessageBox.Show("已删除图像!");
}
else{
imageList1.Images.RemoveAt(i); //使用RemoveAt方法删除图像
pictureBox1.Image = null; //PictureBox控件不显示图片
MessageBox.Show("已删除全部图像!");
}
}
else {
MessageBox.Show( "已删除图像,控件中已无可删除图像" );
}
}
3、ImageList控件的部分属性及其说明
属性
说明
Images
包含关联控件将要使用的图片。每个单独的图像可以通过其索引值或其键值来访问
ImageSize
获取或设置图像列表中的图像大小
ColorDepth
获取图像列表的颜色深度
TransparentColor
获取或设置被视为透明的颜色
注:更多属性和方法说明见:
http://msdn.microsoft.com/zh-cn/library/System.Windows.Forms.ImageList(v=vs.110).aspx
- 存储图像控件ImageList
- ImageList存储图像控件
- ImageList(存取图像控件)《笔记2》
- ImageList 控件
- C# winform imageList控件加载图像失真问题的解决办法
- ImageList控件的学习
- ImageList控件(3)
- C#控件之ImageList
- MFC ImageList控件的使用方法
- TreeView/ListView/ImageList 控件改造
- VB ImageList控件应用详解
- ImageList
- vb 中ImageList 控件的安装
- Windows应用程序高级控件之ImageList
- ImageList加载GIF文件,在控件中动态调用
- 怎么把ImageList中的图片填充到ListView控件中
- 把ImageList中的图片填充到ListView控件中
- ImageList研究
- 浅谈2017noip信息奥赛普及组试题
- 最新版 Ubuntu下安装posgtresql
- 17.11.27,web学习第十三天,还有一年,努力吧青年Servlet
- 51Nod-1298 圆与三角形
- 11.27--一对多关联映射
- ImageList存储图像控件
- java_day08
- 对尺取法的一些理解
- c语言的左结合性与右结合性
- nm
- 简记Android源码设计模式——One
- JavaWeb-013-JSP的基本语法
- 数据结构小记
- 0——1背包问题动态规划求解