Visual Studio C# program hareket etmiyor

Erenklnbck

Centipat
Katılım
16 Şubat 2020
Mesajlar
14
Merhaba ben Visual Studio'da C#'den program tasarlıyorum. Flatsize'ı flat yaparak tasarladım. Fakat tek problemim var o da programı hiçbir yere oynatamıyorum. Mouse ile dol tık basılı tutup sürüklemeye çalışıyorum. Normal olarak ama olmuyor. Ne yapabilirim?
 

Dosya Ekleri

  • 15845494832376821751325440659071.jpg
    15845494832376821751325440659071.jpg
    1,1 MB · Görüntüleme: 54
Son düzenleyen: Moderatör:
Merhaba, attığınız şey için teşekkür ederim.
  • private bool mouseDown;
  • private Point lastLocation
Bu kısım ne ve nereyeden geliyor? Anlayamadım ama yine de teşekkür ederim.
 
Son düzenleyen: Moderatör:
"mouseDown" gördüğünüz gibi bir bool değişkeni. Mouse tuşuna bastığınızda MouseDown eventi tetiklenip "mouseDown" değişkeni true yapıyor. Eğer o değişken true değilse MouseMove eventinin içindeki kodlar çalışmıyor. Böylece MouseMove eventi her tetiklendiğinde (mouse hareket ettiğinde tetiklenir) form kaymıyor, sadece mousea basılı tutulduysa kayıyor. Mouse bırakıldığında MouseUp tetikleniyor ve bu değer tekrar false oluyor.

"lastLocation" ise Mouse tuşuna en son bastığınız noktayı kaydediyor, böylece sizin mouse'u ne kadar kaydırdığınız ölçülüyor.

Bu değişkenleri o eventlerin herhangi birinin üstüne (dışına) vs. yazabilirsiniz. Üç event için de ortak olduğundan birinin içine yazmamalısınız.
 
Kodda hata göremedim, zaten hata veriyor dememişsiniz. Tahmin ediyorum, siz kodu direkt kopyala-yapıştır ile programa attınız. Eğer böyle yaptıysanız;

O fonksiyonlar bir event gibi çalışmıyor çünkü tetiklenmiyorlar. Siz bir butona çift tıklayarak event oluşmasını sağladığınızda aslında Visual Studio formun tasarım koduna oluşturduğu fonksiyonu event olarak atıyor. Siz sadece kodu attığınızda bu olmuyor. Bizim o fonksiyonun event olduğunu ve hangi event olarak atanacağını, yani ne zaman tetikleneceğini belirmemiz lazım.

Bunu arayüzden yapmanın yolu şu: Sağ altta Properties olan, formdaki araçların özelliğini belirttiğimiz noktadan Event sekmesini "Şimşek" işaretine tıklayarak açın. Orada gerekli eventleri bulup fonksiyon adlarını yazın. Şu şekilde olmalı:

1584612482204.png


Fonksiyon adlarını doğru yazdığınızdan emin olun, yoksa düzgün çalışmayacaktır.
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Yeni konular

Geri
Yukarı