AutoScroll Özelliği :Eğer flowlayoutpanel nesnesinin içerisine eklenen kontroller flowlayoutpanel in dışarısına taşar ise otomatik olarak genişlik ve uzunluk scroll ları ortaya çıkar.
Flow Direction Özelliği: Bu özellik içerisinde tanımlanmış 4 farklı sıralama şekli vardır.Burada tanımlanan sıralama şekline göre içerisinde bulunan nesneleri otomatik olarak sıralar.
LeftToRight : Sola hizalı olarak yani soldan sağa doğru sıralama yapar.
TopDown : Yukarıdan başlayarak aşağıya doğru sıralama yapar.
BottomUp : Aşağıdan başlayarak yukarıya doğru sıralama yapar.
RightToLeft : Sağa hizalı olarak yani sağdan sola doğru sıralama yapar.
WrapContents Özelliği : True olarak ayarlandığında içerisine eklenen nesneleri flowlayoutpanel in genişliğine gelene kadar yanyana genişliğini aştıktan sonra da bir alt satırdan devam etmesini sağlar.
Evet arkadaşlar clowlayoutpanel in en önemli ayırt edici özellikleri bunlardır.Gelelim satranç tahtasını oluşturmaya.Formunuza bir adet flowlayoutpanel atın yeterlidir.Ve aşağıdaki kodları Fomun Load olayına yazın.
int i = 0, j = 0, yer = 0;
for (i = 0; i < 8; i++)
{
for (j = 0; j < 8; j++)
{
if (i%2==0)
{
if (yer == 1)
{
Button btn = new Button();
btn.BackColor = Color.Black;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
yer = 0;
}
else
{
yer++;
Button btn = new Button();
btn.BackColor = Color.White;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
}
else
{
if (yer == 0)
{
Button btn = new Button();
btn.BackColor = Color.Black;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
yer++;
}
else
{
yer = 0;
Button btn = new Button();
btn.BackColor = Color.White;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
}
}
}
çok guzel olmuş koray bey..
YanıtlaSilTeşekkür ederim .. Faydalı olabildiysem ne mutlu ...
YanıtlaSilEllerinize sağlık hocam, çok güzel iş yapmışsınız
YanıtlaSil"Yer"değişkenine bence gerek yok
YanıtlaSilint i, j;
YanıtlaSilfor (i = 0; i < 8; i++)
{
for (j = 0; j < 8; j++)
{
if (i % 2 == 0)
{
if (j % 2 == 0)
{
Button btn = new Button();
btn.BackColor = Color.White;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
else
{
Button btn = new Button();
btn.BackColor = Color.Black;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
}
else
{
if (j % 2 == 0)
{
Button btn = new Button();
btn.BackColor = Color.Black;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
else
{
Button btn = new Button();
btn.BackColor = Color.White;
btn.Size = new Size(50, 50);
flowLayoutPanel1.Controls.Add(btn);
}
}
}
}
Aslında tek döngü ile de yapılır ama açıklayıcı ve anlaşılır olsun diye bu şekilde yapmıştım.Algoritmalar farklılık tabi ki de gösterecektir elbet.Yer değişkeni olmadan da olur :D
Silhocam merhaba ben şimdi basit bir satranç programı yapmaya çalışıyorum. Bu nesneyi kullandım sizin kodları kullandım. Otomatik kendi buton oluşturmuş güzel mesela d5 deki butonu nasıl seçebilirim. bu flowlayoutpanelin items gibi bir özelliği var mı ya da başka bir mantığı?
YanıtlaSil