Csharp/C Sharp/GUI Windows Form/ImageList — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
(нет различий)
|
Текущая версия на 14:32, 26 мая 2010
Add to and get Image from Image List
<source lang="csharp"> using System; using System.Collections.Generic; using System.ruponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using System.IO; public class Form1 : Form {
private System.Windows.Forms.Button cmdFillImageList; private System.Windows.Forms.Button cmdPaintImages; private System.Windows.Forms.ImageList iconImages; public Form1() { InitializeComponent(); } private void cmdFillImageList_Click(object sender, EventArgs e) { iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit; iconImages.ImageSize = new System.Drawing.Size(16, 16); string[] iconFiles = Directory.GetFiles(Application.StartupPath, "*.ico"); foreach (string iconFile in iconFiles) { Icon newIcon = new Icon(iconFile); iconImages.Images.Add(newIcon); } } private void cmdPaintImages_Click(object sender, EventArgs e) { Graphics g = this.CreateGraphics(); for (int i = 0; i < iconImages.Images.Count; i++) { iconImages.Draw(g, 30 + i * 30, 30, i); } g.Dispose(); } private void InitializeComponent() { this.cmdFillImageList = new System.Windows.Forms.Button(); this.cmdPaintImages = new System.Windows.Forms.Button(); this.iconImages = new System.Windows.Forms.ImageList(new System.ruponentModel.Container()); this.SuspendLayout(); // // cmdFillImageList // this.cmdFillImageList.Location = new System.Drawing.Point(29, 217); this.cmdFillImageList.Name = "cmdFillImageList"; this.cmdFillImageList.Size = new System.Drawing.Size(118, 23); this.cmdFillImageList.TabIndex = 0; this.cmdFillImageList.Text = "Fill Image List"; this.cmdFillImageList.UseVisualStyleBackColor = true; this.cmdFillImageList.Click += new System.EventHandler(this.cmdFillImageList_Click); // // cmdPaintImages // this.cmdPaintImages.Location = new System.Drawing.Point(153, 217); this.cmdPaintImages.Name = "cmdPaintImages"; this.cmdPaintImages.Size = new System.Drawing.Size(112, 23); this.cmdPaintImages.TabIndex = 1; this.cmdPaintImages.Text = "Paint Images"; this.cmdPaintImages.UseVisualStyleBackColor = true; this.cmdPaintImages.Click += new System.EventHandler(this.cmdPaintImages_Click); // // iconImages // this.iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit; this.iconImages.ImageSize = new System.Drawing.Size(16, 16); this.iconImages.TransparentColor = System.Drawing.Color.Transparent; // // ImageListTest // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 266); this.Controls.Add(this.cmdPaintImages); this.Controls.Add(this.cmdFillImageList); this.Font = new System.Drawing.Font("Tahoma", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); this.Name = "ImageListTest"; this.Text = "ImageListTest"; this.ResumeLayout(false); } [STAThread] static void Main() { Application.EnableVisualStyles(); Application.Run(new Form1()); }
}
</source>
Image List Example
<source lang="csharp"> /* User Interfaces in C#: Windows Forms and Custom Controls by Matthew MacDonald Publisher: Apress ISBN: 1590590457
- /
using System; using System.Drawing; using System.Collections; using System.ruponentModel; using System.Windows.Forms; using System.Data; using System.Drawing.Drawing2D; using System.IO; namespace ImageListExample {
/// <summary> /// Summary description for ImageListExample. /// </summary> public class ImageListExample : System.Windows.Forms.Form { internal System.Windows.Forms.Button cmdDrawImageList; internal System.Windows.Forms.Button cmdFillImageList; /// <summary> /// Required designer variable. /// </summary> private System.ruponentModel.Container components = null; public ImageListExample() { // // Required for Windows Form Designer support // InitializeComponent(); // // TODO: Add any constructor code after InitializeComponent call // } /// <summary> /// Clean up any resources being used. /// </summary> protected override void Dispose( bool disposing ) { if( disposing ) { if (components != null) { components.Dispose(); } } base.Dispose( disposing ); } #region Windows Form Designer generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.cmdDrawImageList = new System.Windows.Forms.Button(); this.cmdFillImageList = new System.Windows.Forms.Button(); this.SuspendLayout(); // // cmdDrawImageList // this.cmdDrawImageList.FlatStyle = System.Windows.Forms.FlatStyle.System; this.cmdDrawImageList.Location = new System.Drawing.Point(164, 172); this.cmdDrawImageList.Name = "cmdDrawImageList"; this.cmdDrawImageList.Size = new System.Drawing.Size(96, 24); this.cmdDrawImageList.TabIndex = 3; this.cmdDrawImageList.Text = "Draw Images"; this.cmdDrawImageList.Click += new System.EventHandler(this.cmdDrawImageList_Click); // // cmdFillImageList // this.cmdFillImageList.FlatStyle = System.Windows.Forms.FlatStyle.System; this.cmdFillImageList.Location = new System.Drawing.Point(28, 172); this.cmdFillImageList.Name = "cmdFillImageList"; this.cmdFillImageList.Size = new System.Drawing.Size(104, 24); this.cmdFillImageList.TabIndex = 2; this.cmdFillImageList.Text = "Fill ImageList"; this.cmdFillImageList.Click += new System.EventHandler(this.cmdFillImageList_Click); // // ImageListExample // this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(292, 214); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.cmdDrawImageList, this.cmdFillImageList}); this.Name = "ImageListExample"; this.Text = "ImageList Example"; this.ResumeLayout(false); } #endregion /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main() { Application.Run(new ImageListExample()); } ImageList iconImages = new System.Windows.Forms.ImageList(); private void cmdFillImageList_Click(object sender, System.EventArgs e) { // Configure the ImageList. iconImages.ColorDepth = System.Windows.Forms.ColorDepth.Depth8Bit; iconImages.ImageSize = new System.Drawing.Size(16, 16); // Get all the icon files in the current directory. string[] iconFiles = Directory.GetFiles(Application.StartupPath, "*.ico"); // Create an Image object for each file and add it to the ImageList. // You can also use an Image subclass (like Icon). foreach (string iconFile in iconFiles) { Icon newIcon = new Icon(iconFile); iconImages.Images.Add(newIcon); } } private void cmdDrawImageList_Click(object sender, System.EventArgs e) { // Get the graphics device context for the form. Graphics g = this.CreateGraphics(); // Draw each image using the ImageList.Draw() method. for (int i = 0; i < iconImages.Images.Count; i++) { iconImages.Draw(g, 30 + i * 30, 30, i); } // Release the graphics device context. g.Dispose(); } }
}
</source>
<A href="http://www.nfex.ru/Code/CSharpDownload/ImageListExample.zip">ImageListExample.zip( 24 k)</a>