Mega Code Archive

 
Categories / C# / GUI Windows Form
 

CheckedChanged Event

using System; using System.Drawing; using System.Windows.Forms;     class RadioButtons: Form {      bool  bFillEllipse;      Color colorEllipse;          static void Main()      {           Application.Run(new RadioButtons());      }      RadioButtons()      {           ResizeRedraw = true;           string[] astrColor = { "Black", "Blue", "Green", "Cyan"};               GroupBox grpbox = new GroupBox();           grpbox.Parent   = this;           grpbox.Text     = "Color";           grpbox.Location = new Point(Font.Height / 2, Font.Height / 2);           grpbox.Size     = new Size(9 * Font.Height, (3 * astrColor.Length + 4) * Font.Height / 2);               for (int i = 0; i < astrColor.Length; i++)           {                RadioButton radiobtn = new RadioButton();                radiobtn.Parent      = grpbox;                radiobtn.Text        = astrColor[i];                radiobtn.Location    = new Point(Font.Height,3 * (i + 1) * Font.Height / 2);                radiobtn.Size        = new Size(7 * Font.Height,3 * Font.Height / 2);                radiobtn.CheckedChanged += new EventHandler(RadioButtonOnCheckedChanged);                radiobtn.Checked = true;           }           CheckBox chkbox = new CheckBox();           chkbox.Parent   = this;           chkbox.Text     = "Fill Ellipse";           chkbox.Location = new Point(Font.Height, 3 * (astrColor.Length + 2) * Font.Height / 2);           chkbox.Size     = new Size(Font.Height * 7, 3 * Font.Height / 2);           chkbox.CheckedChanged += new EventHandler(CheckBoxOnCheckedChanged);      }      void RadioButtonOnCheckedChanged(object obj, EventArgs ea)      {           RadioButton radiobtn = (RadioButton) obj;               if(radiobtn.Checked)           {                colorEllipse = Color.FromName(radiobtn.Text);                Invalidate(false);           }      }      void CheckBoxOnCheckedChanged(object obj, EventArgs ea)      {           bFillEllipse = ((CheckBox)obj).Checked;           Invalidate(false);      }      protected override void OnPaint(PaintEventArgs pea)      {           Graphics  grfx = pea.Graphics;           Rectangle rect = new Rectangle(10 * Font.Height, 0,                                          ClientSize.Width -                                               10 * Font.Height - 1,                                          ClientSize.Height - 1);           if(bFillEllipse)                grfx.FillEllipse(new SolidBrush(colorEllipse), rect);           else                grfx.DrawEllipse(new Pen(colorEllipse), rect);      } }