PictureBox etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster
PictureBox etiketine sahip kayıtlar gösteriliyor. Tüm kayıtları göster

24 Ekim 2015 Cumartesi

C Sharp Form Uygulamalar Yılan Oyunu

UYGULAMAYI İNDİR



KONU : C Sharp ( C# ) Form Uygulamalar çift kişilik ve tek kişilik yılan oyunu hazırlama, mayın tarlası oyunu , c sharp form yılan oyun uygulaması


ETİKETLER : C Sharp Oyun | c sharp oyun örnekleri | c sharp oyun yapma | c sharp oyun kodları | csharp oyun programlama | csharp örnek oyun | csharp örnek projeler | csharp örnek programlar| c sharp örnek kodlar | csharp örnek kodları | c sharp örnekleri | csharp örnek | c sharp oyun programları | c# oyun | c# oyun yapımı | c# oyun programlama | c# oyun kodları | c# oyun örnekleri | | c# oyun örnekleri indir | c# örnek oyun | c# yılan oyunu | c# yılan oyunu yapımı | c# yılan oyunu kodu | c# yılan oyun | c# yılan oyunu kod | c# yılan oyunu kodları







using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Threading;
using System.Collections;

namespace Yilan
{
    public partial class YilanForm : Form
    {
        int oyuncuSayisi = 1;
        int maxOyuncuSayisi = 2;
        bool oyunDurum = false;
        Semaphore semaPhore;

        ///          /// Yilan nesneleri         /// 
        Yilan[] yilan;

        ///          /// Yılanın deri renkleri         /// 
        Brush[] fircalar = { Brushes.Blue, Brushes.Green, Brushes.Gray, Brushes.GreenYellow };

        ///          /// Grafik nesnesi         /// 
        Grafik grafik;

        ///          /// Anaform penceresi         /// 
        public YilanForm()
        {
            InitializeComponent();
        }

        private Grafik Grafik
        {
            get
            {
                return grafik;
            }
            set
            {
                grafik = value;
            }
        }

        private Yilan [] Yilan
        {
            get
            {
                return yilan;
            }
            set
            {
                yilan = value;
            }
        }


        ///          /// Form yükleme metodu         /// 
        /// 
        /// 
        private void YilanForm_Load(object sender, EventArgs e)
        {
            //oyun yüklenirkn puan etiketleri görünmesin
            lblBrinciOyuncu.Visible = false;
            lblIkinciOyuncu.Visible = false;

            //Oyun yüklenirken 2 yılan nesnesini oluştur
            Yilan = new Yilan[maxOyuncuSayisi];

            //Oyun yüklenirker grafik nesnesini oluştur
            Grafik = new Grafik();

            //Oyunu bir oyunculu olarak başlat
            for (int i = 0; i < maxOyuncuSayisi; i++)
            {
                Yilan[i] = new Yilan();
            }

            this.Text = "Yılan Oyunu";

            Grafik.grafikAlaniOlustur();

            Grafik.yem.X = -1;
            Grafik.yem.Y = -1;
            Grafik.yemVarMi = false;

            if (Grafik.bmp != null)
            {
                oyunAlani.Image = Grafik.bmp;
                oyunAlani.Refresh();
            }

            semaPhore = new Semaphore(1, 1);
        }

        ///          /// Timer olayı, yılan grafiğini günceller ve yılanı bir birim         /// Hareket ettirir         /// 
        /// 
        /// 
        private void oyunTimerTick(object sender, EventArgs e)
        {
            semaPhore.WaitOne();
            for (int i = 0; i < oyuncuSayisi; i++)
            {
                //yılanı gittiği yönde bir birim kaydırma
                if (Yilan[i].rota == 1) Yilan[i].yilanSolaGit();
                if (Yilan[i].rota == 2) Yilan[i].yilanSagGit();
                if (Yilan[i].rota == 3) Yilan[i].yilanYukariGit();
                if (Yilan[i].rota == 4) Yilan[i].yilanAsagiGit();

                //yılan alanının sınırları geçildiğinde yılanı diğer taraftan çıkar
                if (Yilan[i].x > 39) Yilan[i].x = 0;
                else if (Yilan[i].x < 0) Yilan[i].x = 40;

                if (Yilan[i].y > 39) Yilan[i].y = 0;
                else if (Yilan[i].y < 0) Yilan[i].y = 40;

                //yilana yeni eklenen birimi yılanın rengi ile boya
                Grafik.YilaniDoldur(Yilan[i].x, Yilan[i].y, Yilan[i].yilanRengi);

                //eklenen birimi kuyruğa ekle
                Yilan[i].alanX[Yilan[i].kuyrukUzunluk] = Yilan[i].x;
                Yilan[i].alanY[Yilan[i].kuyrukUzunluk] = Yilan[i].y;
                Yilan[i].kuyrukUzunluk++;

                //Kuyruğu bir birim azaltmak için yılanın kuyruğundaki son birimi zemin rengine boya
                Grafik.YilaniBosalt(Yilan[i].alanX[Yilan[i].kuyrukUzunluk - Yilan[i].uzunluk],
       Yilan[i].alanY[Yilan[i].kuyrukUzunluk - Yilan[i].uzunluk]);
                
                
                if (Yilan[i].kuyrukUzunluk > 899)
                {
                    Yilan[i].kuyrukUzunluk = Yilan[i].uzunluk;
                    for (int z = 0; z < Yilan[i].uzunluk; ++z)
                    {
                        Yilan[i].alanX[Yilan[i].uzunluk - z] = Yilan[i].alanX[900 - z];
                        Yilan[i].alanY[Yilan[i].uzunluk - z] = Yilan[i].alanY[900 - z];
                    }
                }

                if ((Grafik.yilanYemAldiMi(Yilan[i].x, Yilan[i].y) == false) && (Grafik.yemVarMi == false))
                {
                    //yeni yem oluştur ve koordinatını belirle
                    Grafik.yemKoordinatBelirle();
                    Grafik.yemKoy(Grafik.yem.X, Grafik.yem.Y);
                    Grafik.yemVarMi = true;
                }


                if (Grafik.yilanYemAldiMi(Yilan[i].x, Yilan[i].y) == true)
                {
                    Grafik.yem.X = -1;
                    Grafik.yem.Y = -1;
                    Grafik.yemVarMi = false;
                    Yilan[i].puan += 1 * Yilan[i].hiz;
                    Yilan[i].uzunluk += 1;
                    if (i == 0)
                        lblBrinciOyuncu.Text = "Birinci Oyuncu PUAN : " + Yilan[i].puan.ToString();
                    else if (i == 1)
                        lblIkinciOyuncu.Text = "Birinci Oyuncu PUAN : " + Yilan[i].puan.ToString();    
                }

                oyunAlani.Image = Grafik.bmp;
                oyunAlani.Refresh();
            }


            for (int i = 0; i < oyuncuSayisi; i++)
            {
                if (Yilan[i].yilanKendisineCarptimi(Grafik.bmp) == true)
                {
                    oyunTimer.Enabled = false;
                    bekleTimer.Enabled = true;

                    if (Yilan[i].bekleint <= 0)
                    {
                    }
                    else
                    {
                        Yilan[i].bekleint = 20;
                    }
                }
            }
            semaPhore.Release();
        }

        private void bekleTimerTick(object sender, EventArgs e)
        {
            for (int i = 0; i < oyuncuSayisi; i++)
            {
                Yilan[i].bekleint--;
                if (Yilan[i].bekleint == 0)
                {
                    bekleTimer.Enabled = false;
                    yilanOyunBitti();
                    break;
                }
            }
        }

        public void yilanOyunBitti()
        {
            oyunDurum = false;
            oyunTimer.Interval = 50; //200
            oyunTimer.Enabled = oyunDurum;
            if(oyuncuSayisi == 1)
                MessageBox.Show(lblBrinciOyuncu.Text,"Oyun Bitti",
                                     MessageBoxButtons.OK,MessageBoxIcon.Information);
            else
                MessageBox.Show( lblBrinciOyuncu.Text + "\n " + lblIkinciOyuncu.Text,
                                    "Oyun Bitti",MessageBoxButtons.OK,MessageBoxIcon.Information);
            lblBrinciOyuncu.Text = " PUAN : " + Yilan[0].puan.ToString();
            Grafik.grafikAlaniOlustur();
            Grafik.yemVarMi = oyunDurum;
            oyunTimer.Enabled = oyunDurum;
            programToolStripMenuItem.DropDownItems[0].Enabled = oyunDurum;
        }

        private void yeniOyun()
        { 
            oyunTimer.Interval = 50; //200
            oyunTimer.Enabled = false;

            Grafik.grafikAlaniOlustur();
            Grafik.yemVarMi = false;
            for (int i = 0; i < oyuncuSayisi; i++)
            {

                Yilan[i].uzunluk = 5;
                Yilan[i].kuyrukUzunluk = 5;
                Yilan[i].x = 5 + i * 5;
                Yilan[i].y = 5 + i * 5;
                Yilan[i].rota = 2 - i;
                Yilan[i].puan = 0;
                Yilan[i].YilanSifirla();
                Yilan[i].yilanRengi = fircalar[i];
                
            }

            oyunDurum = true;
            oyunTimer.Enabled = true;
        }


        private void YilanForm_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Left) Yilan[0].rota = 1;
            if (e.KeyCode == Keys.Right) Yilan[0].rota = 2;
            if (e.KeyCode == Keys.Up) Yilan[0].rota = 3;
            if (e.KeyCode == Keys.Down) Yilan[0].rota = 4;
            if (e.KeyCode == Keys.Escape) Application.Exit();


            if (e.KeyCode == Keys.S) Yilan[1].rota = 1;
            if (e.KeyCode == Keys.F) Yilan[1].rota = 2;
            if (e.KeyCode == Keys.E) Yilan[1].rota = 3;
            if (e.KeyCode == Keys.D) Yilan[1].rota = 4;


            for (int i = 0; i < oyuncuSayisi; i++)
            {
                Yilan[i].bekleint = 20;
            }
           
            bekleTimer.Enabled = false;
            oyunTimer.Enabled = true;
        }

        private void birOyuncuToolStripMenuItem_Click(object sender, EventArgs e)
        {
            oyuncuSayisi = 1;
            lblBrinciOyuncu.Visible = true;
            lblIkinciOyuncu.Visible = false;
            lblBrinciOyuncu.Text = "Birinci Oyuncu PUAN : " + Yilan[0].puan.ToString();

            yeniOyun();
        }

        private void ikiOyuncuToolStripMenuItem1_Click(object sender, EventArgs e)
        {
            oyuncuSayisi = 2;
            lblBrinciOyuncu.Visible = true;
            lblIkinciOyuncu.Visible = true;
            lblBrinciOyuncu.Text = "Birinci Oyuncu PUAN : " + Yilan[0].puan.ToString();
            lblIkinciOyuncu.Text = "İkinci  Oyuncu PUAN : " + Yilan[1].puan.ToString();

            yeniOyun();
        }

        private void hizToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            string etiket = e.ClickedItem.Text.Substring(0, 1);

            int hiz = -1;
            switch (etiket)
            {
                case ("1"):
                    hiz = 1;
                    oyunTimer.Interval = 150;
                    break;
                case ("2"):
                    hiz = 2;
                    oyunTimer.Interval = 130;
                    break;
                case ("3"):
                    hiz = 3;
                    oyunTimer.Interval = 110;
                    break;
                case ("4"):
                    hiz = 4;
                    oyunTimer.Interval = 90;
                    break;
                case ("5"):
                    hiz = 5;
                    oyunTimer.Interval = 80;
                    break;
                case ("6"):
                    hiz = 6;
                    oyunTimer.Interval = 70;
                    break;
                case ("7"):
                    hiz = 7;
                    oyunTimer.Interval = 60;
                    break;
                case ("8"):
                    hiz = 8;
                    oyunTimer.Interval = 50;
                    break;
                case ("9"):
                    hiz = 9;
                    oyunTimer.Interval = 40;
                    break;

                default:
                    break;

            }

            for (int i = 0; i < oyuncuSayisi; i++)
            {
                Yilan[i].hiz = hiz;
            }
        }

        private void programToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            string etiket = e.ClickedItem.Text.Trim();

            switch (etiket)
            {
                case ("Başla"):
                    if (!oyunDurum)
                    {
                        yeniOyun();
                    }
                    else
                    {
                        oyunTimer.Interval = 50;//150
                        oyunTimer.Enabled = true;
                    }
                    break;
                case ("Durdur"):
                    oyunTimer.Enabled = false;
                    break;
                case ("Yeni Oyun"):
                    yeniOyun();
                    break;
                default:
                    break;
            }
        }

        private void yeniOyunToolStripMenuItem1_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            string etiket = e.ClickedItem.Text.Substring(0, 3);

            switch (etiket)
            {
                case ("Bir"):
                    oyuncuSayisi = 1;
                    break;
                case ("İki"):
                    oyuncuSayisi = 2;
                    break;
                default:
                    oyuncuSayisi = 1;
                    break;
            }


            yeniOyun();
        }

        private void yardımToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e)
        {
            string etiket = e.ClickedItem.Tag.ToString();

            switch (etiket)
            {
                case ("0"):
                    MessageBox.Show("Oyunu başlatmak için 'Yeni Oyuncu' menüsü seçerek\n"
                        +"kaç oyuncu ile oynamak istiyorasanız o alt menüyü tıklayınız.\n\n"+
                        "Birinci Oyuncu için yön tuşları atanmıştır."+
                        "\nİkinci Oyuncu için ileri:E sağ:S sol:F geri:D Tuşları Atanmıştır.");
                    break;
                case ("1"):
                    MessageBox.Show(((char)169).ToString() + " 2011 Yılan Oyunu");
                    break;
                default:
                    MessageBox.Show(((char)169).ToString() + " 2011 Yılan Oyunu");
                    break;
            }

        }
 
    }
}



UYGULAMAYI İNDİR


22 Kasım 2014 Cumartesi

C Sharp Form Uygulamalar Mayın Tarlası Oyunu

C Sharp Form da mayın tarlası oyunu hazırlama, mayın tarlası oyunu , c sharp mayın tarlası oyun uygulaması hazırlama örneği. C# picturebox ve bitmap sınıfılarının kullanımı ile örnek uygulama. Mayın tarlası oyunu butonlarını dinamik olarak oluşturma ve oluşturulan butonlar event tanımlama. Generic List kullanarak butonları bir listede saklama. C sharp mayın tarlası oyun algoritması oluşturma. C sharp da rastgele tıklanan bir butonu sender parametresinden buton nesnesine dönüştürme. Bitmap alanı oluşturup alanı istenilen renkler ile doldurma. C sharp da tıklanan herhangi bir butonu gizleme. Butonları yan yana ve alt alta gelecek şekilde matriksler şeklinde sıralama veya gösterme. Tıklanan butonun bütün özelliklerine erişme örneği.

C Sharp Oyun | c sharp oyun örnekleri | c sharp oyun yapma | c sharp oyun kodları | csharp oyun programlama | csharp örnek oyun | csharp örnek projeler | csharp örnek programlar| c sharp örnek kodlar | csharp örnek kodları | c sharp örnekleri | csharp örnek | c sharp oyun programları | c# oyun | c# oyun yapımı | c# oyun programlama | c# oyun kodları | c# oyun örnekleri | | c# oyun örnekleri indir | c# örnek oyun | c# mayın tarlası | c sharp mayın tarlası | c sharp mayın tarlası oyunu | c sharp mayın tarlası oyunu yapma | c# mayın tarlsı yapma | c# mayın tarlası kodları | c# mayın tarlası indir | c sharp mayın tarlası oyna | mayın tarlası oyna.

UYGULAMAYI İNDİR

Mayın Tarlası Benzer Uygulama 2




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.Collections;
using Mayın;


namespace MayınTarlası
{
    public partial class MayınTarlası : Form
    {
        

        public MayınTarlası()
        {
            InitializeComponent();
        }

        private void MayınTarlasıOlustur()
        {
            

            if (Mayın_Tarlası.bmp != null)
            {
                Mayın_Tarlası.MayınRengi = Brushes.Red;
                Mayın_Tarlası.ArkaPlan = Brushes.Blue;
                Mayın_Tarlası.ButonRengi = Brushes.White;
            }
            if (Mayın_Tarlası.OyunMayınSayısı == 0)
                Mayın_Tarlası.OyunMayınSayısı = 40;
            pictureBox_MayınTarlası.Visible = false;
            Mayın_Tarlası.MayınYerleştir();
            Mayın_Tarlası.MayınTarlasınıDoldur();
            pictureBox_MayınTarlası.Image = Mayın_Tarlası.bmp;
            pictureBox_MayınTarlası.Refresh();
            int satir=0, sutun=0;
            Mayın_Tarlası.KalanMayınSayısı = Mayın_Tarlası.MayınSayısı;
            Mayın_Tarlası.TespitEdilenMayınSayısı = 0;
            label_kalanmayın.Text = "Kalan Mayın Sayısı :" + Mayın_Tarlası.KalanMayınSayısı.ToString();
            for (int i = 0; i < 400; i++)
            {
                if (i % 20 == 0 && i!=0)
                {
                    satir++;
                    sutun = 0;
                }
                Button tb = new Button();
                tb.Name = i.ToString();
                tb.TabIndex = i;
                tb.TabStop = false;
                tb.Text = "";
                tb.Size = new System.Drawing.Size(20, 20);
                Point p = new System.Drawing.Point(sutun* tb.Width+20, satir* tb.Height+20);
                tb.Location = p;
                tb.FlatStyle =System.Windows.Forms.FlatStyle.Flat ;
                tb.Visible = true;
                tb.BackColor = Color.Gray;
                tb.BringToFront();
                tb.MouseDown += new MouseEventHandler(this.butonlarClick);
                pictureBox_MayınTarlası.Controls.Add(tb);
                pictureBox_MayınTarlası.Size = new Size(440,440);
                this.AutoSize = true;
                Mayın_Tarlası.Butonlar.Add(tb);
                sutun++;
            }
            pictureBox_MayınTarlası.Visible = true;
            Mayın_Tarlası.LineCiz();
         }

        private void butonlarClick(object sender, System.Windows.Forms.MouseEventArgs e)
        {
            Button BasılanButon = (Button)sender;
            if (BasılanButon.BackColor == Color.Gray)
                if (e.Button == MouseButtons.Left)
                {
                    BasılanButon.Visible = false;
                    if (Mayın_Tarlası.MayınVarMı(BasılanButon.Location.X, BasılanButon.Location.Y))
                    {
                        for (int i = 0; i < Mayın_Tarlası.OyunMayınSayısı; i++)
                            ((Button)Mayın_Tarlası.Butonlar[Mayın_Tarlası.MayınYerleri[i]]).Visible = false;
                        MessageBox.Show("Oyun Bitti");
                        for (int i = 0; i < 400; i++)
                            ((Button)Mayın_Tarlası.Butonlar[i]).Enabled = false;
                    }
                    else
                    {
                        if (Mayın_Tarlası.EtiketKoy(BasılanButon) != "0")
                            pictureBox_MayınTarlası.Controls.Add(Mayın_Tarlası.label_buton);
                    }
                    if (Mayın_Tarlası.EtiketKoy(BasılanButon) == "0")
                    {
                        BosYerleriAc(BasılanButon);
                        int i=0;
                        while (Mayın_Tarlası.BakılanButonlar.Count - i > 0)
                        {
                            if (Mayın_Tarlası.EtiketKoy((Button)Mayın_Tarlası.BakılanButonlar[i]) == "0")
                                BosYerleriAc((Button)Mayın_Tarlası.BakılanButonlar[i]);
                            else
                                pictureBox_MayınTarlası.Controls.Add(Mayın_Tarlası.label_buton);
                            i++;                
                        }
                        for (int a = 0; a < Mayın_Tarlası.BakılanButonlar.Count; a++)
                            ((Button)Mayın_Tarlası.BakılanButonlar[a]).Visible = false;
                    }
                }
            if (e.Button == MouseButtons.Right)
            {
                if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor == Color.Gray)
                {
                    ((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor = Color.GreenYellow;
                    Mayın_Tarlası.KalanMayınSayısı--;
                    for(int i=0;i < Mayın_Tarlası.MayınSayısı;i++)
                        if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).Name == Mayın_Tarlası.MayınYerleri[i].ToString())
                            Mayın_Tarlası.TespitEdilenMayınSayısı++;
                }
                else
                {
                    ((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).BackColor = Color.Gray;
                    Mayın_Tarlası.KalanMayınSayısı++;
                    for (int i = 0; i < Mayın_Tarlası.MayınSayısı; i++)
                        if (((Button)Mayın_Tarlası.Butonlar[int.Parse(BasılanButon.Name)]).Name == Mayın_Tarlası.MayınYerleri[i].ToString())
                            Mayın_Tarlası.TespitEdilenMayınSayısı--;
                }                
            }
            label_kalanmayın.Text = "Kalan Mayın Sayısı :" + Mayın_Tarlası.KalanMayınSayısı.ToString();
            Mayın_Tarlası.LineCiz();
            if (Mayın_Tarlası.TespitEdilenMayınSayısı == Mayın_Tarlası.MayınSayısı)
            {
                MessageBox.Show("Oyunu Kazandınız. Tebrikler.");
                for (int i = 0; i < 400; i++)
                    ((Button)Mayın_Tarlası.Butonlar[i]).Enabled = false;
            }
                
                
            
        }

        private void BosYerleriAc(Button ArananButon)
        {
            bool varmı = false;
            int x = ArananButon.Location.X, y = ArananButon.Location.Y;
            if (x <= 400 && x >= 20 && y <= 400 && y >= 20)
            {
                if ( x > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 1] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 1]);
                }
                varmı = false;

                if ( x < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if (int.Parse(ArananButon.Name) + 1 == int.Parse(((Button)Mayın_Tarlası.BakılanButonlar[b]).Name))
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 1]));
                }
                varmı = false;

                if ( x > 20 && y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 21] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 21]));
                }
                varmı = false;

                if ( x < 400 && y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 19] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 19]));
                }

                varmı = false;
            
                if ( y > 20 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 20] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) - 20]));
                }
                varmı = false;

                if ( y < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 20] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 20]));
                }
                varmı = false;

                if ( x > 20 && y < 400 )
                {
                    for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                        if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 19] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                            varmı = true;
                    if (!varmı)
                        Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 19]));
                }
                varmı = false;

                if (x < 400 && y < 400)
                {
                for (int b = 0; b < Mayın_Tarlası.BakılanButonlar.Count; b++)
                    if ((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 21] == (Button)Mayın_Tarlası.BakılanButonlar[b])
                        varmı = true;
                if (!varmı)
                    Mayın_Tarlası.BakılanButonlar.Add(((Button)Mayın_Tarlası.Butonlar[int.Parse(ArananButon.Name) + 21]));
                }
            }
        }

        private void button_YeniOyun_Click(object sender, EventArgs e)
        {
            Temizle();
            MayınTarlasıOlustur();   
        }

        private void Temizle()
        {
            Mayın_Tarlası.Butonlar.Clear();
            Mayın_Tarlası.BakılanButonlar.Clear();
            pictureBox_MayınTarlası.Controls.Clear();
            Mayın_Tarlası.gfx.FillRectangle(System.Drawing.Brushes.Blue, Mayın_Tarlası.rect);
            pictureBox_MayınTarlası.Image = Mayın_Tarlası.bmp;
            pictureBox_MayınTarlası.Refresh();
            Mayın_Tarlası.MayınSayısı = 0;    
        }

        private void MayınTarlası_Load(object sender, EventArgs e)
        {
            Define.SiteyiAc();
            Mayın_Tarlası.Load_MayınTarlası();
            MayınTarlasıOlustur();
        }

        private void toolStripMenuItem4_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 80;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void toolStripMenuItem3_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 40;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void toolStripMenuItem5_Click(object sender, EventArgs e)
        {
            Mayın_Tarlası.OyunMayınSayısı = 100;
            Temizle();
            MayınTarlasıOlustur();  
        }

        private void MayınTarlası_FormClosing(object sender, FormClosingEventArgs e)
        {
            Define.SiteyiAc();
        }

    }
}


UYGULAMAYI İNDİR

21 Mart 2014 Cuma

C Sharp Form Uygulamalar Puzzle Oyunu Oyna



KONU : C Sharp Uygulamalar - C Sharp ( C# ) form uygulamalar puzzle oyunu oyna.
ETİKETLER: c sharp puzzle - c sharp puzzle game - c sharp picturbox - c# puzzle game - c# puzzle oyunu





UYGULAMAYI İNDİR



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;

namespace C_Sharp_Puzzle_Game
{
    public partial class MAinForm : Form
    {
        private Point bosYer;
        private int saniye = 0;
        private int dakika = 0;

        List< Image > resimParcalari = new List< Image >();
        List< PictureBox > resimAlanlari = new List< PictureBox >();
        Bitmap CurrentBitmapImage;


        public MAinForm()
        {
            InitializeComponent();
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            CurrentBitmapImage = new Bitmap(C_Sharp_Puzzle_Game.Properties.Resources.resim, new Size(375, 375));

            YeniOyun();
        }

        private void YeniOyun()
        {

            for (int i = 0; i < resimAlanlari.Count; i++)
            {
                this.Controls.Remove(resimAlanlari[i]);
            }
           
            resimAlanlari.Clear();
            resimParcalari.Clear();

            tumresim.Location = new Point(550, 50);
            tumresim.BorderStyle = BorderStyle.FixedSingle;
            tumresim.Size = new System.Drawing.Size(375, 375);
            tumresim.Image = CurrentBitmapImage.Clone(new Rectangle(new Point(0, 0), new Size(375, 375)), System.Drawing.Imaging.PixelFormat.DontCare);

            for (int i = 0; i < 9; i++)
            {
                resimParcalari.Add(CurrentBitmapImage.Clone(new Rectangle(new Point(i / 3 * 125, i % 3 * 125), new Size(125, 125)), System.Drawing.Imaging.PixelFormat.DontCare));
            }

            List< int > resimDagilimi = new List< int >();
            Random rastgele = new Random();

            for (int i = 0; i < 8; i++)
            {
                int resimNo = rastgele.Next(8);
                if (!resimDagilimi.Contains(resimNo))
                {
                    resimDagilimi.Add(resimNo);
                }
                else
                {
                    i--;
                }

            }

            for (int i = 0; i < 3; i++)
            {
                for (int j = 0; j < 3; j++)
                {
                    if (!(j == 2 && i == 2))
                    {
                        PictureBox resim = new PictureBox();
                        resim.Click += new EventHandler(p_Click);
                        resim.Location = new Point(125 * i + 50, 125 * j + 50);
                        resim.BorderStyle = BorderStyle.FixedSingle;
                        resim.Size = new System.Drawing.Size(125, 125);
                        resim.Tag = resimDagilimi[i * 3 + j].ToString();
                        resim.Image = resimParcalari[resimDagilimi[i * 3 + j]];
                        resimAlanlari.Add(resim);
                        this.Controls.Add(resim);
                    }
                    else
                    {
                        bosYer = new Point(125 * 2 + 50, 125 * 2 + 50);
                    }
                }
            }

            timer.Enabled = true;
            saniye = 0;
            dakika = 0;
            lblDakika.Text = dakika.ToString("00");
            lblSaniye.Text = saniye.ToString("00");
        }

        void p_Click(object sender, EventArgs e)
        {
            PictureBox resim = (PictureBox)sender;

            if ((resim.Location.X - 125 == bosYer.X) && (resim.Location.Y == bosYer.Y))
            {
                resim.Location = bosYer;
                bosYer.X += 125;
                this.Focus();
            }
            else if (resim.Location.X + 125 == bosYer.X && (resim.Location.Y == bosYer.Y))
            {
                resim.Location = bosYer;
                bosYer.X -= 125;
                this.Focus();
            }
            else if (resim.Location.Y - 125 == bosYer.Y && (resim.Location.X == bosYer.X))
            {
                resim.Location = bosYer;
                bosYer.Y += 125;
                this.Focus();
            }

            else if (resim.Location.Y + 125 == bosYer.Y && (resim.Location.X == bosYer.X))
            {
                resim.Location = bosYer;
                bosYer.Y -= 125;
                this.Focus();
            }

            bool durum = OyunDurumunuKontrolEt();

            if (durum)
            {
                timer.Enabled = false;

                MessageBox.Show("Tebrikler oyunu tamamladınız","Bilgi",MessageBoxButtons.OK,MessageBoxIcon.Exclamation);
            }
        }

        private bool OyunDurumunuKontrolEt()
        {
            bool durum = true;
            for (int i = 0; i < resimAlanlari.Count; i++)
            {
                int id = int.Parse(resimAlanlari[i].Tag.ToString());

                if (!(resimAlanlari[i].Location.X == (id / 3) * 125 + 50 && resimAlanlari[i].Location.Y == (id % 3) * 125 + 50))
                {
                    durum = false;
                    break;
                }
            }


            return durum;
        }

        private void btnBaşlat_Click(object sender, EventArgs e)
        {
            YeniOyun();
        }

        private void btnDuraklat_Click(object sender, EventArgs e)
        {
            timer.Enabled = !timer.Enabled;
        }

        private void btnCik_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void timer_Tick(object sender, EventArgs e)
        {
            if (saniye++ == 60)
            {
                lblDakika.Text = dakika++.ToString("00");
                saniye = 0;
            }

            lblSaniye.Text = saniye.ToString("00");
                    
        }
    }
}

UYGULAMAYI İNDİR

14 Ocak 2014 Salı

C Sharp Form Uygulamalar Yılan N Merdiven Oyunu Oyna



KONU : C Sharp Uygulamalar - C Sharp ( C# ) form uygulamalar snake n ladder oyunu oynama uygulaması. Sınıf oluşturma ve bu sınfın alanlarını ve özellikelerini tanımlama. Picturebox nesnesini miras alarak yeni bir nesne oluşturma.
ETİKETLER: c sharp class - c sharp picturebox - c sharp oyun - c sharp game - c# picturebox - c# oyun oynama - csharp oyun indir





UYGULAMAYI İNDİR

C# DİĞER OYUN UYGULAMARI




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.Threading;

namespace C_Sharp_Form_Snake_Ladders_Game
{
    public partial class Form1 : Form
    {
        int oyunSirasi = 0;
        private Oyuncu[] oyuncu = new Oyuncu[2];
        WMPLib.WindowsMediaPlayer wplayer;

        public Form1()
        {
            InitializeComponent();
        }

        private void btnBasla_Click(object sender, EventArgs e)
        {
            btnBasla.Enabled = false;
            btnZarAt.Enabled = true;
            oyuncu[0].Isim = "1. OYUNCU";
            oyuncu[1].Isim = "2. OYUNCU";
            oyunSirasi = 0;
            OyunuYenile();
        }

        private void btnZarAt_Click(object sender, EventArgs e)
        {
            int d = ZarAt();

            int konum = oyuncu[oyunSirasi].Konum;

            if (oyuncu[oyunSirasi].HareketEdebilir)
            {
                if (konum + d < 56)
                {
                    HareketEt(d, konum);
                }
                else
                    MessageBox.Show(oyuncu[oyunSirasi].Isim + " !!! Hareket edemezsiniz", "Uyarı !!!", MessageBoxButtons.OK, MessageBoxIcon.Error);


            }
            else if (d == 6 && oyuncu[oyunSirasi].HareketEdebilir == false)
            {
                oyuncu[oyunSirasi].HareketEdebilir = true;
                MessageBox.Show(oyuncu[oyunSirasi].Isim + " Harekete Başlayabilir.", "Harekete Başla !!!", MessageBoxButtons.OK, MessageBoxIcon.Information);
 

            }

            if (d + konum == 55)
            {
                MessageBox.Show("Tebrikler !!! " + oyuncu[oyunSirasi].Isim + " Kazandı...", "Tebrikler", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
                btnBasla.Enabled = true;
                btnZarAt.Enabled = false;
            }

            oyunSirasi = (oyunSirasi + 1) % 2;
        }


        private int ZarAt()
        {
            Random Rastgele = new Random();
            int gelenYuz = Rastgele.Next(1, 7);
            btnZarGelenYuz.Text = gelenYuz.ToString();

            try
            {
  
                wplayer.controls.play();

                //diceSound.Source = new Uri(@"../../Resources/diceRoll.mp3", UriKind.RelativeOrAbsolute);
                //diceSound.Play();
            }
            catch (Exception)
            {
            }

            switch (gelenYuz)
            {
                case 0:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice0;
                    break;
                case 1:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice1;
                    break;
                case 2:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice2;
                    break;
                case 3:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice3;
                    break;
                case 4:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice4;
                    break;
                case 5:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice5;
                    break;
                case 6:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice6;
                    break;
                default:
                    this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice0;
                    break;
            }
          
            return gelenYuz;
        }

        private void HareketEt(int zar, int konum)
        {
            int yeniKonum=konum+zar;
            int[] yilan_merdiven_noktalari = { 3, 9, 12, 13, 20, 25, 36, 39, 44, 46, 47, 54 };

   
            oyuncu[oyunSirasi].Konum = yeniKonum;
            Thread.Sleep(250);
            if (yilan_merdiven_noktalari.Contains(yeniKonum))
            {
                int[] destination = { 10, 21, 2, 31, 5, 40, 51, 22, 15, 50, 30, 19 };


                for (int i = 0; i < yilan_merdiven_noktalari.Length; i++)
                {
                    if (yeniKonum == yilan_merdiven_noktalari[i])
                    {
                        oyuncu[oyunSirasi].Konum = destination[i];

                        break;
                    }
                }

            }
        }
 
        private void OyunuYenile()
        {
            this.pictureZar.Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.dice0;
            oyuncu[0].Konum = 0;
            oyuncu[1].Konum = 0;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            for (int i = 0; i < 2; i++)
            {
                oyuncu[i] = new Oyuncu();
                if(i==0)
                oyuncu[i].Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.oyuncu1;
                else
                 oyuncu[i].Image = global::C_Sharp_Form_Snake_Ladders_Game.Properties.Resources.oyuncu2;
                oyuncu[i].Name = "oyuncu1";
                oyuncu[i].Size = new System.Drawing.Size(80, 89);
                oyuncu[i].SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;
                oyuncu[i].TabIndex = 1;
                oyuncu[i].TabStop = false;
                oyuncu[i].Konum = 0;
                this.Controls.Add(oyuncu[i]);
                oyuncu[i].BringToFront();
            }

            try
            {
                wplayer = new WMPLib.WindowsMediaPlayer();

                wplayer.URL = @"diceRoll.mp3";
            }
            catch
            { }
        }
    }


    class Oyuncu: PictureBox
    {
        List OyunAlaniTumNoktalar;

        private bool hareketEdebilir;
        private string isim;
        private int konum;

        public Oyuncu()
        {
            OyunAlaniTumNoktalar = new List();

            for (int i = 0; i < 56; i++)
            {
                if ((i / 8) % 2 == 0)
                    OyunAlaniTumNoktalar.Add(new Point(1 + 80 * (i % 8), 541 - 89 * (i / 8)));
                else
                    OyunAlaniTumNoktalar.Add(new Point(559 - 80 * (i % 8), 541 - 89 * (i / 8)));
            }
        }
        public string Isim
        {
            get
            {
                return isim;
            }
            set
            {
                isim = value;
            }
        }

        public bool HareketEdebilir
        {
            get
            {
                return hareketEdebilir;
            }
            set
            {
                hareketEdebilir = value;
            }
        }

        public int Konum 
        {
            get
            {
               return konum ;
            }
            set
            {
                konum = value;
                this.Location = OyunAlaniTumNoktalar[konum];
            }
        }
    }
}

   




UYGULAMAYI İNDİR

C# DİĞER OYUN UYGULAMARI

11 Ocak 2014 Cumartesi

C Sharp Form Uygulamalar Timer Kullanarak Resim Animasyonu Hazırlama



KONU : C Sharp Uygulamalar - C Sharp ( C# ) form da timer kullanarak resim animasyonu hazırlama. C sharp form da timer kullanarak kayan resim uygulaması hazırlama.
ETİKETLER: c sharp timer - c sharp imagelist - c sharp image - c sharp picturebox - c sharp animasyon - c# imagelist - c# picturebox





UYGULAMAYI İNDİR


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace C_Sharp_Timer_Resim_Animasyon
{
    public partial class Form_Resim_Animasyon : Form
    {
        int counter1 = 0;
        int counter2 = 0;
        int counter3 = 0;

        public Form_Resim_Animasyon()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
           counter1 = ++counter1 % 5;

           pictureBox1.Image = ımageList.Images[4 - counter1];
        }

        private void timer2_Tick(object sender, EventArgs e)
        {
            counter2 = ++counter2 % 5;

            pictureBox2.Image = ımageList.Images[4 - counter2];
        }

        private void timer3_Tick(object sender, EventArgs e)
        {
            counter3 = ++counter3 % 5;

            pictureBox3.Image = ımageList.Images[4 - counter3];
        }

        private void Form_Resim_Animasyon_Load(object sender, EventArgs e)
        {
            //birinci picturebox kontrolü için
            timer1.Interval = 100;
            timer1.Enabled = true;

            //ikinci picturebox kontrolü için
            timer2.Interval = 300;
            timer2.Enabled = true;

            //üçüncü picturebox kontrolü için
            timer3.Interval = 1000;
            timer3.Enabled = true;
        }
    }
}

UYGULAMAYI İNDİR

6 Aralık 2013 Cuma

C Sharp Uygulamalar Grafik Olarak Çizilen Resimin Piksel Değerlerini Bulma

KONU : C Sharp Uygulamalar - C Sharp ( C# ) grafik olarak çizilen resmin piksel değerlerini bulma. Bitmap resminden çizilen grafiğin piksellerini bulma
ETİKETLER:c sharp bitmap - c sharp grafik - c sharp image - c sharp piksel - c sharp getpixel - c sharp form


UYGULAMAYI İNDİR



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;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {

            Bitmap bmp = new Bitmap(360, 360);

            Graphics gr = Graphics.FromImage(bmp);

            Rectangle rect = new System.Drawing.Rectangle(0, 0, 360, 360);
            gr.FillRectangle(System.Drawing.Brushes.Blue, rect);

            // Create pens.
            Pen redPen = new Pen(Color.Red, 3);
            Pen greenPen = new Pen(Color.Green, 3);

            // Create points that define curve.
            Point point1 = new Point(50, 50);
            Point point2 = new Point(100, 25);
            Point point3 = new Point(200, 5);
            Point point4 = new Point(250, 50);
            Point point5 = new Point(300, 100);
            Point point6 = new Point(350, 200);
            Point point7 = new Point(250, 250);
            Point[] curvePoints = { point1, point2, point3, point4, point5, point6, point7 };

            // Draw lines between original points to screen.
            gr.DrawLines(redPen, curvePoints);

            List points = new List();

            for (int y = 0; y < bmp.Height; ++y)
            {
                for (int x = 0; x < bmp.Width; ++x)
                {
                    Color c = bmp.GetPixel(x, y);
                    if (c.ToArgb() == Color.Red.ToArgb())
                    {
                        points.Add(new Point(x, y));
                    }
                }
            }

            //  MessageBox.Show(points[0].ToString());

            pictureBox1.Image = bmp;
            //    bmp.Dispose();

            for (int i = 0; i < points.Count; i++)
            {
                listBox1.Items.Add(points[i].ToString());
            }
 
        }
 
    }
}

UYGULAMAYI İNDİR

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);
                }
            }

        }

    }
}


UYGULAMAYI İNDİR