ArrayList etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
ArrayList etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
16 Haziran 2013 Pazar
C Sharp Uygulamalar Generic Tip Kullanımı
KONU : C Sharp Uygulamalar - C Sharp ( C# ) jeneric tip kullanımı örnekleri, C sharpta kullanılan listeler ve bu Listelere eleman ekleme. ArrayList Kullanımı, Generic List Kullanımı, Dictionary Kullanımı, SortedDictionary Kullanımı, SortedList Kullanımı, Stack - Queue Kullanımı, generic class kullanımı.
Etiketler:
ArrayList
,
C#-Form
,
Dictionary
,
Double
,
Generic List
,
ListBox
,
Queue
,
SortedDictionary
,
SortedList
,
Stack
25 Mayıs 2013 Cumartesi
C Sharp Uygulamaları İskambil Kağıt Dağıtma Örnek Uygulama
KONU : C Sharp Uygulamalar - C Sharp ( C# ) form uygulamalar iskambil kağıtları karma ve dağıtma. İskambil kağıtlarını form üzerinde picturebox nesnesi ile gösterme. Oyuncu Kağıt görsellerini form üzerinde sıralama ve yerleştirme. İskambil kağıt oynama alanı oluşturma.
ETİKETLER: c sharp iskambil - c# iskambil - c# iskambil oyunu - c# pişti oyunu - c# pişti - c# ile pişti - c# batak oyunu - c# batak oyunu -c sharp kağıt oyun alanı - oyun alanı oluşturma- kağıt oyunları - picturebox - resimleri bölme - resimleri rastgele dağıtma.
UYGULAMAYI İNDİR
using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace iskambilOyun
{
public partial class Form1 : Form
{
#region Global değişkenler
ArrayList resimler = new ArrayList();
ArrayList kartlar = new ArrayList();
ArrayList etiketler = new ArrayList();
int[] oyunEl = new int[52];
int deste = 20, el = 5;
Label[] lblPuan;
int acikKartSayisi = 0;
int[] xx = new int[4];
int[] yy = new int[4];
#endregion
#region Form1
public Form1()
{
InitializeComponent();
}
#endregion
#region Form u yukle
private void Form1_Load(object sender, EventArgs e)
{
resimleriOlustur();
Dagit_Click(sender, e);
kartlariSirala();
ekranaYukle();
elPuanları();
ayniOlanKartlar();
}
#endregion
#region Yeni oyun Başlat
private void yeniOyunToolStripMenuItem_Click(object sender, EventArgs e)
{
Temizle();
resimleriOlustur();
Dagit_Click(sender, e);
kartlariSirala();
ekranaYukle();
elPuanları();
ayniOlanKartlar();
}
#endregion
#region Ekranı temizle
private void Temizle()
{
for (int i = 0; i < deste; i++)
{
((PictureBox)kartlar[i]).Dispose();
}
for (int i = 0; i < 8; i++)
{
((Label)etiketler[i]).Dispose();
}
acikKartSayisi = 0;
}
#endregion
#region Kartları Dağıt
private void Dagit_Click(object sender, EventArgs e)
{
ArrayList kagitlar = new ArrayList();
kagitlar.Clear();
kartlar.Clear();
etiketler.Clear();
int x = 375, y = 50, kart = 0, random;
Random rdn = new Random();
for (int i = 0; i < 4; i++)
{
Label lbl = new Label();
lbl.Name = i.ToString();
xx[i] = x - 100;
yy[i] = y + 115;
lbl.Location = new Point(x - 100, y + 115);
etiketler.Add(lbl);
this.Controls.Add(lbl);
for (int j = 0; j < el; j++)
{
PictureBox pcb = new PictureBox();
pcb.Name = kart.ToString();
pcb.Size = new Size(73, 98);
pcb.Location = new Point(x, y);
pcb.Click += new EventHandler(pcb_Click);
pcb.BringToFront();
x -= 25;
random = rdn.Next(0, 52);
while (kagitlar.Contains(random))
random = rdn.Next(0, 52);
kagitlar.Add(random);
kartlar.Add(pcb);
oyunEl[kart++] = random;
//pcb.Image = (Image)resimler[random];
this.Controls.Add(pcb);
}
if (i != 1)
y += 200;
if (i == 1)
x = 600;
if (i == 2)
x = 375;
if (i == 0)
x = 135;
}
}
#endregion
#region Kart resimlerini olustur
void resimleriOlustur()
{
Bitmap resim = new Bitmap(1, 1);
Graphics gr = null;
//Bu Bitmap için grafik nesnesi oluştur
int x = 0, y = 0, w = 73, h = 98;
for (int i = 0; i < 4; i++)
{
for (int k = 0; k < 13; k++)
{
Rectangle seçili_alan = new Rectangle(x, y, w, h);
//Seçili alan büyüklüğünde bir Bitmap oluştur
resim = new Bitmap(seçili_alan.Width, seçili_alan.Height);
//Bu Bitmap için grafik nesnesi oluştur
gr = Graphics.FromImage(resim);
//Picture Box içindeki resmi yeni resmin 0,0 noktasına çiz
gr.DrawImage(pictureBox1.Image, 0, 0, seçili_alan, GraphicsUnit.Pixel);
//Yeni resmi pictureBox içine ata
resimler.Add(resim);
x += 73;
}
y += 98;
x = 0;
}
gr.Dispose();
}
#endregion
#region Tıklanan kartı ortaya al
void pcb_Click(object sender, EventArgs e)
{
PictureBox pcb = (PictureBox)sender;
pcb.Location = new Point(325, 250);
pcb.BringToFront();
int kartNo = int.Parse(pcb.Name);
int lblNo = 0;
if (kartNo < el && kartNo >= 0)
lblNo = 0;
else
if (kartNo < 2 * el && kartNo >= el)
lblNo = 1;
else
if (kartNo < 3 * el && kartNo >= 2 * el)
lblNo = 2;
else
lblNo = 3;
Label lbl = ((Label)etiketler[lblNo]);
int lblToplam = int.Parse(lbl.Text.Substring(14));
int kartPuan = 0;
if (oyunEl[kartNo] % 13 == 0)
kartPuan = 11;
else
if (oyunEl[kartNo] % 13 > 9)
kartPuan = 10;
else
kartPuan = oyunEl[kartNo] % 13 + 1;
lblToplam -= kartPuan;
lbl.Text = "Toplam Puan = " + lblToplam.ToString();
acikKartSayisi--;
DialogResult c = DialogResult.None;
if (acikKartSayisi == 0)
c = MessageBox.Show("Yeni oyun başlasın mı?", "Yeni Oyun", MessageBoxButtons.YesNo);
if (c == DialogResult.Yes)
yeniOyunToolStripMenuItem_Click(sender, e);
else if (c == DialogResult.No)
Close();
}
#endregion
#region Kartları Sırala
void kartlariSirala()
{
ArrayList oyun = new ArrayList();
for (int i = 0; i < 4; i++)
{
for (int k = 0; k < el; k++)
oyun.Add(oyunEl[i * el + k]);
oyun.Sort();
for (int k = 0; k < el; k++)
oyunEl[i * el + k] = int.Parse(oyun[k].ToString());
oyun.Clear();
}
}
#endregion
#region Kartları Göster
void ekranaYukle()
{
for (int i = 0; i < deste; i++)
{
PictureBox pcb = (PictureBox)kartlar[i];
pcb.Image = (Image)resimler[oyunEl[i]];
acikKartSayisi++;
}
}
#endregion
#region Puanları Hesapla
private void elPuanları()
{
int toplamPuan = 0, kartPuan = 0;
for (int i = 0; i < 4; i++)
{
for (int k = 0; k < el; k++)
{
if (oyunEl[i * el + k] % 13 == 0)
kartPuan = 11;
else
if (oyunEl[i * el + k] % 13 > 9)
kartPuan = 10;
else
kartPuan = oyunEl[i * el + k] % 13 + 1;
toplamPuan += kartPuan;
}
Label lbl = (Label)etiketler[i];
lbl.Text = "Toplam Puan = " + toplamPuan.ToString();
toplamPuan = 0;
}
}
#endregion
#region Puanları Hesapla
private void ayniOlanKartlar()
{
string aynısıvar = "";
int aynı = 1;
int name = 4;
for (int j = 0; j < 4; j++)
{
string etiket = "";
aynısıvar = "";
for (int i = 0; i < el; i++)
{
if (aynısıvar.IndexOf((oyunEl[5 * j + i] % 13).ToString()) < 0)
for (int k = i + 1; k < el; k++)
{
if (oyunEl[5 * j + i] % 13 == oyunEl[5 * j + k] % 13)
{
aynı++;
aynısıvar = (oyunEl[5 * j + 1] % 13).ToString() + " ";
}
}
if (aynı > 1)
etiket += aynı.ToString() + " tane " + (oyunEl[5 * j + i] % 13 + 1).ToString() + " ";
aynı = 1;
}
if (etiket == "")
etiket += "Aynı Olan Kart Yok";
else
etiket += " var";
Label lblet = new Label();
lblet.Name = name.ToString();
lblet.Location = new Point(xx[j], yy[j] + 30);
lblet.Text = etiket;
etiketler.Add(lblet);
this.Controls.Add(lblet);
name++;
}
}
#endregion
private void denemeToolStripMenuItem_Click(object sender, EventArgs e)
{
List< Image > parcaResimler = new List< Image >();
Bitmap resim;
Graphics gr = null;
Image alinanResim = Image.FromFile(@"C:\alinan.jpg");
int sutunSayisi = 2;
int satirSayisi = 5;
int x = 0;
int y = 0;
for (int i = 0; i < satirSayisi; i++)
{
for (int k = 0; k < sutunSayisi; k++)
{
Rectangle seçili_alan = new Rectangle(x, y, alinanResim.Width / sutunSayisi, alinanResim.Height / satirSayisi);
//Seçili alan büyüklüğünde bir Bitmap oluştur
resim = new Bitmap(seçili_alan.Width, seçili_alan.Height);
//Bu Bitmap için grafik nesnesi oluştur
gr = Graphics.FromImage(resim);
//Picture Box içindeki resmi yeni resmin 0,0 noktasına çiz
gr.DrawImage(alinanResim, 0, 0, seçili_alan, GraphicsUnit.Pixel);
//Yeni resmi parcaResimler içine image olarak kaydet
parcaResimler.Add(resim);
x += alinanResim.Width / sutunSayisi;
}
y += alinanResim.Height / satirSayisi;
x = 0;
}
gr.Dispose();
x = 30;
y = 30;
for (int i = 0; i < 2; i++)
{
for (int j = 0; j < 5; j++)
{
PictureBox pcb = new PictureBox();
pcb.Size = new Size(alinanResim.Width / sutunSayisi, alinanResim.Height / satirSayisi);
pcb.Location = new Point(x, y);
pcb.Click += new EventHandler(pcb_Click);
pcb.BringToFront();
pcb.Image = parcaResimler[i * 5 + j];
x += 50;
y += 50;
this.Controls.Add(pcb);
}
}
}
}
}
17 Mayıs 2013 Cuma
C Sharp Uygulamalar XBall Oyunu Programı
KONU : C Sharp Uygulamalar - C Sharp ( C# ) form xball oyunu oyna. Form üzerine timer ile kontrolleri hareket ettirme. C sharp forma dinamik kontrol ekleme. Mouse hareketlerine göre sağ sola kayan kontrol. Arraylist kullanımı ve örnekleri.
UYGULAMAYI İNDİR
using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Xball
{
public partial class Xball_Form : Form
{
int yerX = 5,yerY=5;
ArrayList kutucuklar = new ArrayList();
int kutuSayisi = 5;
int Hak = 3;
int Level = 1;
int hareket = 5;
public Xball_Form()
{
InitializeComponent();
}
private void Cball_Load(object sender, EventArgs e)
{
this.Text = "Seviye : " + Level.ToString() + " Kalan hakkınız :" + Hak.ToString();
Yenile();
kutucuklarOlustur();
}
private void Yenile()
{
kutuSayisi = 5 * Level;
Random rdn = new Random();
int x = rdn.Next(0, 50);
int y = rdn.Next(150, 250);
ball.Location = new Point(x, y);
timer1.Enabled = true;
timer1.Interval = 5;
yerX = 1 + Level * 1;
yerY = -1 - Level * 1;
if (yerX < 0)
hareket = yerX * -1;
else
hareket = yerX;
}
private void timer1_Tick(object sender, EventArgs e)
{
Application.DoEvents();
ballHareket();
carpmaDenetimi();
oyunBittiMi(sender, e);
KalanHak(sender, e);
}
private void KalanHak(object sender, EventArgs e)
{
if (ball.Bottom > kontrol.Bottom - 15 && !(ball.Right >= kontrol.Left && ball.Left <= kontrol.Right))
{
Hak--;
for (int i = 0; i < kutucuklar.Count; i++)
{
Button btn = ((Button)kutucuklar[i]);
((Button)kutucuklar[i]).Dispose();
}
kutucuklar.Clear();
timer1.Enabled = false;
DialogResult dr = DialogResult.None;
if (Hak > 0)
{
dr=MessageBox.Show("Yandınız. Kalan hakkınız : " + Hak.ToString());
if(dr ==DialogResult.OK)
Cball_Load(sender, e);
}
else if (Hak == 0)
{
MessageBox.Show("GameOver");
this.Close();
}
}
}
private void oyunBittiMi(object sender, EventArgs e)
{
DialogResult dr = DialogResult.None;
if (kutuSayisi == 0)
{
timer1.Enabled = false;
dr = MessageBox.Show("Tebrikler. Seviye "+Level+" Bitirdiniz. ");
Level++;
}
if (dr == DialogResult.OK)
Cball_Load(sender, e);
}
private void ballHareket()
{
if (this.ClientSize.Width <= ball.Right)
{
yerX = yerX * -1;
}
else if (0 >= ball.Left)
{
yerX = yerX * -1;
}
if (this.ClientSize.Height <= ball.Bottom)
{
yerY = yerY * -1;
}
else if (0 >= ball.Top)
{
yerY = yerY * -1;
}
else if (ball.Bottom >= kontrol.Top + 5 && ball.Right >= kontrol.Left && ball.Left <= kontrol.Right)
{
yerY = yerY * -1;
}
ball.Location = new System.Drawing.Point(ball.Left + yerX, ball.Top + yerY);
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
kontrol.Left = e.X;
}
private void kutucuklarOlustur()
{
for (int j = 0; j < Level; j++)
{
for (int i = 0; i < 5; i++)
{
Button btn = new Button();
btn.Name = i.ToString();
btn.TabStop = false;
btn.Select();
btn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
btn.Location = new Point(20 + i * 50, j*40+20 );
btn.Width = 40;
btn.BackColor = Color.Red;
this.Controls.Add(btn);
kutucuklar.Add(btn);
}
}
}
private void carpmaDenetimi()
{
Rectangle r = new Rectangle();
Rectangle t = new Rectangle();
t.X=ball.Left;
t.Y=ball.Top;
t.Height=ball.Height;
t.Width=ball.Width;
for (int i = 0; i < kutucuklar.Count; i++)
{
Button btn =((Button)kutucuklar[i]);
r.X=btn.Left;
r.Y=btn.Top;
r.Height=btn.Height;
r.Width=btn.Width;
if (r.IntersectsWith(t))
{
kutuSayisi--;
kutucuklar.RemoveAt(i);
if (yerY > 0 && yerX >0)
{
if (btn.Top <= ball.Bottom && btn.Left < ball.Right - hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY > 0 && yerX < 0)
{
if (btn.Top <= ball.Bottom && btn.Right > ball.Left + hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY < 0 && yerX > 0)
{
if (btn.Bottom >= ball.Top && btn.Left < ball.Right - hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY < 0 && yerX < 0)
{
if (btn.Bottom >= ball.Top && btn.Right > ball.Left + hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
btn.Dispose();
}
Application.DoEvents();
}
}
}
}
using System;
using System.Collections.Generic;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Xball
{
public partial class Xball_Form : Form
{
int yerX = 5,yerY=5;
ArrayList kutucuklar = new ArrayList();
int kutuSayisi = 5;
int Hak = 3;
int Level = 1;
int hareket = 5;
public Xball_Form()
{
InitializeComponent();
}
private void Cball_Load(object sender, EventArgs e)
{
this.Text = "Seviye : " + Level.ToString() + " Kalan hakkınız :" + Hak.ToString();
Yenile();
kutucuklarOlustur();
}
private void Yenile()
{
kutuSayisi = 5 * Level;
Random rdn = new Random();
int x = rdn.Next(0, 50);
int y = rdn.Next(150, 250);
ball.Location = new Point(x, y);
timer1.Enabled = true;
timer1.Interval = 5;
yerX = 1 + Level * 1;
yerY = -1 - Level * 1;
if (yerX < 0)
hareket = yerX * -1;
else
hareket = yerX;
}
private void timer1_Tick(object sender, EventArgs e)
{
Application.DoEvents();
ballHareket();
carpmaDenetimi();
oyunBittiMi(sender, e);
KalanHak(sender, e);
}
private void KalanHak(object sender, EventArgs e)
{
if (ball.Bottom > kontrol.Bottom - 15 && !(ball.Right >= kontrol.Left && ball.Left <= kontrol.Right))
{
Hak--;
for (int i = 0; i < kutucuklar.Count; i++)
{
Button btn = ((Button)kutucuklar[i]);
((Button)kutucuklar[i]).Dispose();
}
kutucuklar.Clear();
timer1.Enabled = false;
DialogResult dr = DialogResult.None;
if (Hak > 0)
{
dr=MessageBox.Show("Yandınız. Kalan hakkınız : " + Hak.ToString());
if(dr ==DialogResult.OK)
Cball_Load(sender, e);
}
else if (Hak == 0)
{
MessageBox.Show("GameOver");
this.Close();
}
}
}
private void oyunBittiMi(object sender, EventArgs e)
{
DialogResult dr = DialogResult.None;
if (kutuSayisi == 0)
{
timer1.Enabled = false;
dr = MessageBox.Show("Tebrikler. Seviye "+Level+" Bitirdiniz. ");
Level++;
}
if (dr == DialogResult.OK)
Cball_Load(sender, e);
}
private void ballHareket()
{
if (this.ClientSize.Width <= ball.Right)
{
yerX = yerX * -1;
}
else if (0 >= ball.Left)
{
yerX = yerX * -1;
}
if (this.ClientSize.Height <= ball.Bottom)
{
yerY = yerY * -1;
}
else if (0 >= ball.Top)
{
yerY = yerY * -1;
}
else if (ball.Bottom >= kontrol.Top + 5 && ball.Right >= kontrol.Left && ball.Left <= kontrol.Right)
{
yerY = yerY * -1;
}
ball.Location = new System.Drawing.Point(ball.Left + yerX, ball.Top + yerY);
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
kontrol.Left = e.X;
}
private void kutucuklarOlustur()
{
for (int j = 0; j < Level; j++)
{
for (int i = 0; i < 5; i++)
{
Button btn = new Button();
btn.Name = i.ToString();
btn.TabStop = false;
btn.Select();
btn.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
btn.Location = new Point(20 + i * 50, j*40+20 );
btn.Width = 40;
btn.BackColor = Color.Red;
this.Controls.Add(btn);
kutucuklar.Add(btn);
}
}
}
private void carpmaDenetimi()
{
Rectangle r = new Rectangle();
Rectangle t = new Rectangle();
t.X=ball.Left;
t.Y=ball.Top;
t.Height=ball.Height;
t.Width=ball.Width;
for (int i = 0; i < kutucuklar.Count; i++)
{
Button btn =((Button)kutucuklar[i]);
r.X=btn.Left;
r.Y=btn.Top;
r.Height=btn.Height;
r.Width=btn.Width;
if (r.IntersectsWith(t))
{
kutuSayisi--;
kutucuklar.RemoveAt(i);
if (yerY > 0 && yerX >0)
{
if (btn.Top <= ball.Bottom && btn.Left < ball.Right - hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY > 0 && yerX < 0)
{
if (btn.Top <= ball.Bottom && btn.Right > ball.Left + hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY < 0 && yerX > 0)
{
if (btn.Bottom >= ball.Top && btn.Left < ball.Right - hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
else
if (yerY < 0 && yerX < 0)
{
if (btn.Bottom >= ball.Top && btn.Right > ball.Left + hareket)
yerY = yerY * -1;
else
yerX = yerX * -1;
}
btn.Dispose();
}
Application.DoEvents();
}
}
}
}
Kaydol:
Kayıtlar
(
Atom
)