Merhaba arkadaşlar, bu yazımızda button array kullanımını öğreneceğiz. Bu sayede nesneleri sürekli bırakma yapmadan kod yazarak oluşturmayı sağlayacağız. Basit bir form oluşturun ve aşağıdaki kodu form_load bloğuna yazın. Yeni başlayanlar için form_load olayını aktif etmek için form üzerine çift tıklayabilirsiniz. Bu bloğa yazdığınız kodlar program açıldığında çalışacaktır. Array Butonlarının click event özelliğini eklediğimiz için hangi butonun üzerine tıklarsak o butonun ismini messagebox ta göreceğiz.
Butonlar gibi diğer tüm nesneleri de bu şekilde oluşturabilirsiniz. Aynı zamanda tüm nesnelerin özelliklerini de aynı şekilde değiştirip kullanabilirsiniz.
using System; using System.Drawing; using System.Windows.Forms; namespace ButtonArray { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { int horizotal = 30; int vertical = 30; Button[] buttonArray = new Button[10]; for (int i = 0; i < buttonArray.Length; i++) { buttonArray[i] = new Button(); buttonArray[i].Name = i.ToString(); buttonArray[i].Size = new Size(60, 23); buttonArray[i].Location = new Point(horizotal, vertical); buttonArray[i].Click += new EventHandler(this.ButtonArray_click); // click event yükle if ((i + 1) % 9 == 0) horizotal = +80; else vertical += 30; this.Controls.Add(buttonArray[i]); } } // Click eventını çağırmak için void ButtonArray_click(object sender, EventArgs e) { Button btn = sender as Button; MessageBox.Show(btn.Name); } } }
Bol kodlamalar,
3 yorum
EnesYld · 23 Nisan 2020 02:58 tarihinde
bu eklenen butonlara görev tanımlaması nasıl yapabilirim?
buttonArray[i].Click += new System.EventHandler(this.buttonArray[i]_Click);
ekleyip
private void buttonArray[i]_Click(object sender, eventArgs e) şeklinde metot oluşturduğumda hata alıyorum
Remzi Şahinoğlu · 24 Nisan 2020 10:31 tarihinde
Merhaba, yukarıdaki kodda günelledim. Nasıl yapıldığını click olarak tıklandığında ekrana ismini getiriyor. Umarım işinize yarar.
EnesYld · 24 Nisan 2020 16:29 tarihinde
çok teşekkür ederim işe yaradı