Kaydol:
Kayıt Yorumları
(
Atom
)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespace yuvarlak_buton_olusturma { public partial class Form_Yuvarlak_Buton_Olusturma : Form { public Form_Yuvarlak_Buton_Olusturma() { InitializeComponent(); } private void Form_Yuvarlak_Buton_Olusturma_Load(object sender, EventArgs e) { // beyaz renkli bir yuvarlak buton oluşturalım ShapedButton yuvarlak_buton_beyaz = new ShapedButton(); // Kare veya dikdörtgen butonun size özelliği değiştiği an //şekli yuvarlak olacak yuvarlak_buton_beyaz.Size = new Size(80, 80); // yuvarlak butona diğer özellikleri dinamik olarak verebiliriz yuvarlak_buton_beyaz.Location = new System.Drawing.Point(60, 60); yuvarlak_buton_beyaz.BackColor = Color.White; yuvarlak_buton_beyaz.FlatAppearance.BorderSize = 0; yuvarlak_buton_beyaz.FlatStyle = System.Windows.Forms.FlatStyle.Flat; yuvarlak_buton_beyaz.FlatAppearance.BorderColor = Color.Blue; yuvarlak_buton_beyaz.TabStop = false; yuvarlak_buton_beyaz.TabIndex = 1; // oluşan yuvarlak butonu ana forma ekleme this.Controls.Add(yuvarlak_buton_beyaz); // Siyah renkli bir yuvarlak buton oluşturalım ShapedButton yuvarlak_buton_siyah = new ShapedButton(); // Kare veya dikdörtgen butonun size özelliği değiştiği an //şekli yuvarlak olacak yuvarlak_buton_siyah.Size = new Size(80, 80); // yuvarlak butona diğer özellikleri dinamik olarak verebiliriz yuvarlak_buton_siyah.Location = new System.Drawing.Point(160, 160); yuvarlak_buton_siyah.BackColor = Color.Black; yuvarlak_buton_siyah.FlatAppearance.BorderSize = 0; yuvarlak_buton_siyah.FlatStyle = System.Windows.Forms.FlatStyle.Flat; yuvarlak_buton_siyah.FlatAppearance.BorderColor = Color.Blue; yuvarlak_buton_siyah.TabStop = false; yuvarlak_buton_siyah.TabIndex = 2; // oluşan yuvarlak butonu ana forma ekleme this.Controls.Add(yuvarlak_buton_siyah); // Ayrıca butonlara bir click event i de ekleyelim butonlara tıklandığında // renkleri değişsin yuvarlak_buton_beyaz.Click += new EventHandler(yuvarlak_buton_Click); yuvarlak_buton_siyah.Click += new EventHandler(yuvarlak_buton_Click); } private void yuvarlak_buton_Click(object sender, EventArgs e) { // hangi yuvarlak butona yıklanmışsa onun rengini değiştir //Eğer yuvarlak buton un rengi kırmızı ise eski rengine döndür Button tiklananButon = sender as Button; if (tiklananButon.TabIndex == 1) { if (tiklananButon.BackColor == Color.Red) { tiklananButon.BackColor = Color.White; } else { tiklananButon.BackColor = Color.Red; } } else { if (tiklananButon.BackColor == Color.Red) { tiklananButon.BackColor = Color.Black; } else { tiklananButon.BackColor = Color.Red; } } } #region Windows Form Designer generated code ////// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Form_Yuvarlak_Buton_Olusturma)); this.SuspendLayout(); // // Form_Yuvarlak_Buton_Olusturma // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(292, 328); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.Name = "Form_Yuvarlak_Buton_Olusturma"; this.Text = "Yuvarlak Buton"; this.Load += new System.EventHandler(this.Form_Yuvarlak_Buton_Olusturma_Load); this.ResumeLayout(false); } #endregion } // Yuvarlak butonu oluşturmak için kullanılacak olan Class public class ShapedButton : Button //Buton sınıfından miras alacak { // Yuvarlak buton a yeni bir boyut ( size ) verildiğinde şeklini yuvarlak yapacak protected override void OnResize(EventArgs e) { base.OnResize(e); GraphicsPath gp = new GraphicsPath(); // this.Size ın en boyu aynı oldugundan yuvarlak bir şekil oluşacak gp.AddEllipse(new Rectangle(Point.Empty, this.Size)); // oluşan yeni yuvarlak şekli oluşturulan butona atama this.Region = new Region(gp); // Butonun yeni şekli yuvarlak oldu } } }
Hiç yorum yok :
Yorum Gönder