Csharp/CSharp Tutorial/GUI Windows Forms/Label
Содержание
Add Image in an ImageList to a Label
<source lang="csharp">using System; using System.Drawing; using System.Windows.Forms; using System.Collections; public class ImageLists : Form {
ImageList imgList; Label lbl; LinkLabel lnk; Button btn; public ImageLists() { Size = new Size(300,300); imgList = new ImageList(); Image img; String[] arFiles = {"1.ico","2.ico","3.ico"};
for (int i = 0; i < arFiles.Length; i++) { img = Image.FromFile(arFiles[i]); imgList.Images.Add(img); } imgList.ImageSize = new Size(32, 32);
lbl = new Label(); lbl.Parent = this; lbl.Text = "Label"; lbl.Location = new Point(0,0); lbl.Size = new Size(lbl.PreferredWidth + imgList.ImageSize.Width, imgList.ImageSize.Height + 10); lbl.BorderStyle = BorderStyle.Fixed3D; lbl.ImageList = imgList; lbl.ImageIndex = 0; lbl.ImageAlign = ContentAlignment.MiddleRight; int yDelta = lbl.Height + 10; lnk = new LinkLabel(); lnk.Parent = this; lnk.Text = "LinkLabel"; lnk.Size = new Size(lnk.PreferredWidth + imgList.ImageSize.Width, imgList.ImageSize.Height + 10); lnk.Location = new Point(0, yDelta); lnk.ImageList = imgList; lnk.ImageIndex = 0; lnk.ImageAlign = ContentAlignment.MiddleRight; btn = new Button(); btn.Parent = this; btn.ImageList = imgList; btn.ImageIndex = imgList.Images.Count - 1; btn.Location = new Point(0, 2 * yDelta); btn.Size = new Size(3 * imgList.ImageSize.Width, 2 * imgList.ImageSize.Height);
lbl.ImageIndex = 1; lnk.ImageIndex = 0; btn.ImageIndex = 2; } static void Main() { Application.Run(new ImageLists()); }
}</source>
Add image to Label
<source lang="csharp">using System; using System.Drawing; using System.Windows.Forms; public class LabelImageAdding : Form {
Label lblEcho; TextBox txt; public LabelImageAdding() { Size = new Size(300,250); lblEcho = new Label(); lblEcho.Parent = this; lblEcho.Text = "test"; lblEcho.Location = new Point(0,0); lblEcho.AutoSize = true; lblEcho.BorderStyle = BorderStyle.Fixed3D; int yDelta = lblEcho.Height + 10; Image img = Image.FromFile("YourFile.bmp"); Label lblImage = new Label(); lblImage.Parent = this; lblImage.Location = new Point(250, 0); lblImage.Image = img; lblImage.Anchor = AnchorStyles.Top | AnchorStyles.Right; lblImage.Size = new Size(img.Width, img.Height); Label lblCaption = new Label(); lblCaption.Parent = this; lblCaption.Text = "&Enter Text Here:"; lblCaption.Size = new Size(lblCaption.PreferredWidth, lblCaption.PreferredHeight); lblCaption.Location = new Point(0, yDelta); lblCaption.BorderStyle = BorderStyle.FixedSingle; txt = new TextBox(); txt.Parent = this; txt.Size = new Size(100,23); txt.Location = new Point(lblCaption.Width + 5, yDelta); txt.TextChanged += new System.EventHandler(txt_TextChanged); } static void Main() { Application.Run(new LabelImageAdding()); } private void txt_TextChanged(object sender, EventArgs e) { lblEcho.Text = txt.Text; }
}</source>
Generic event for a Label
<source lang="csharp">using System; using System.Drawing; using System.Collections; using System.ruponentModel; using System.Windows.Forms; using System.Data; public class LabelWithGenericEvent : System.Windows.Forms.Form {
private System.Windows.Forms.Label lblTitle; public LabelWithGenericEvent() { InitializeComponent(); } private void InitializeComponent() { this.lblTitle = new System.Windows.Forms.Label(); this.SuspendLayout(); // // lblTitle // this.lblTitle.Location = new System.Drawing.Point(40, 24); this.lblTitle.Name = "lblTitle"; this.lblTitle.Size = new System.Drawing.Size(150, 25); this.lblTitle.TabIndex = 0; this.lblTitle.Text = "Events Demonstrator"; this.lblTitle.Click += new System.EventHandler(this.GenericEventHandler); this.AutoScaleBaseSize = new System.Drawing.Size(5, 13); this.ClientSize = new System.Drawing.Size(242, 173); this.Controls.AddRange(new System.Windows.Forms.Control[] { this.lblTitle}); this.ResumeLayout(false); } [STAThread] static void Main() { Application.Run(new LabelWithGenericEvent()); } private void GenericEventHandler(object sender, EventArgs e) { MessageBox.Show("Generic event handler","Event Demo"); }
}</source>
Label Text Change
<source lang="csharp">using System; using System.Drawing; using System.Windows.Forms; public class LabelTextChange : Form {
Label lblEcho; TextBox txt; public LabelTextChange() { Size = new Size(300,250); lblEcho = new Label(); lblEcho.Parent = this; lblEcho.Text = "test"; lblEcho.Location = new Point(0,0); lblEcho.AutoSize = true; lblEcho.BorderStyle = BorderStyle.Fixed3D; int yDelta = lblEcho.Height + 10; Image img = Image.FromFile("YourFile.bmp"); Label lblImage = new Label(); lblImage.Parent = this; lblImage.Location = new Point(250, 0); lblImage.Image = img; lblImage.Anchor = AnchorStyles.Top | AnchorStyles.Right; lblImage.Size = new Size(img.Width, img.Height); Label lblCaption = new Label(); lblCaption.Parent = this; lblCaption.Text = "&Enter Text Here:"; lblCaption.Size = new Size(lblCaption.PreferredWidth, lblCaption.PreferredHeight); lblCaption.Location = new Point(0, yDelta); lblCaption.BorderStyle = BorderStyle.FixedSingle; txt = new TextBox(); txt.Parent = this; txt.Size = new Size(100,23); txt.Location = new Point(lblCaption.Width + 5, yDelta); txt.TextChanged += new System.EventHandler(txt_TextChanged); } static void Main() { Application.Run(new LabelTextChange()); } private void txt_TextChanged(object sender, EventArgs e) { lblEcho.Text = txt.Text; }
}</source>