Header Ads

C# Sürüklenilebilen Dinamik Buton Kodları

C# Sürüklenilebilen Dinamik Buton Kodları

C# Sürüklenilebilen Dinamik Buton Kodları

C# butonu sürükle,bırak işlemleri dinamik olarak gerçekleştirebileceğiniz mouse down,up,move eventları ve örnek uygulama kaynak kodlarıdır.
Bu örnek MouseDown,MouseUp ve MouseMove özelliklerini kullanmaktadır.
Pek tercih edilen bir yöntem olmasa da basit uygulamalarda kullanılabilir.
Sürükle bırak işleminin DragDrop Eventları ile kullanım örneğini C# Hanoi Kuleleri Oyunu uygulamasında bulabilirsiniz. Kodların açıklaması mevcuttur.
        public Form1()
        {
            InitializeComponent();
            btn.MouseDown += Btn_MouseDown;
            btn.MouseMove += Btn_MouseMove;
            btn.MouseUp += Btn_MouseUp;
        }

        Button btn = new Button();
        bool suruklenme = false; // Sürükleme ile ilgili bool değişkeni
        Point ilkkonum;
        int surukleme_sayisi = 0;
        private void Form1_Load(object sender, EventArgs e)
        {
            btn.Text = "C# Ders Örnekleri"; // Dinamik buton oluşturduk
            btn.AutoSize = true;
            this.Controls.Add(btn);
            toolStripStatusLabel1.Text = "";
        }
        private void Btn_MouseDown(object sender, MouseEventArgs e)
        {
            suruklenme = true; // Butona basıldığında suruklenmeyi aktif ettik.
            ilkkonum = e.Location; // Mousenin ilk konumunu belirledil.
        }
        private void Btn_MouseMove(object sender, MouseEventArgs e)
        {
            if (suruklenme == true) // Sürüklenme aktifse yani mouseye basılıyorsa
            {
                btn.Left = e.X + btn.Left - (ilkkonum.X); // Butonun left ten uzaklığını veriyoruz.
                btn.Top = e.Y + btn.Top - (ilkkonum.Y); // Aynı şekilde üstten
            }
            toolStripStatusLabel1.Text = "Butonun konumu :  X= " +  btn.Location.X + "  Y= " + btn.Location.Y + "  Sürüklenme Sayısı (Tık Başına): " + surukleme_sayisi;
            // Tool stripte de yazdık
        }
        private void Btn_MouseUp(object sender, MouseEventArgs e)
        {
            surukleme_sayisi++; // Mouseyi bıraktığımızda sürüklenme sayısını arttırıyoruz
            suruklenme = false;  // Sürüklenmeyi bitiriyoruz.
        }

Kaynak kodları için : C# Sürüklenebilen dinamik buton

Hiç yorum yok

Konu hakkında yorumlarınızı bekliyorum teşekkürler.

Post Top Ad

Post Bottom Ad