Çözüldü C# Fare İmlecinin Panel Üstündeki Yerini Bulma

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

LastikUsman

Decapat
Katılım
12 Haziran 2021
Mesajlar
542
Çözümler
2
Daha fazla  
Cinsiyet
Erkek
Bir timer oluşturdum ve bu timer 1 milisaniyede bir faremin masaüstündeki yerini hesaplıyor. Ardından panelde faremi hareket ettirdikçe çalışacak bir method oluşturdum ve methodun içine pictureBox'ımı mouse imlecimin bulunduğu yere götür diye bir komut yazdım. Ama burada şöyle bir sorun oluştu. Benim timer'ın içindeki kod masaüstünü referans alıyor. Faremin masaüstüne göre yerini söylüyor. Ben panele göre yerini söylemesini istiyorum. Meselâ, panel'in X=12 yerindeyken mousem masaütüne göre X=50'de olabiliyor. Formu sağa doğru kaydırırsam panelin aynı yerine panelin X=12 değeri masaüstüne göre X=150 olabiliyor. Kodları aşağıya yazdım.

Kısaca ben mouse imlecimin masaüstündeki yerini değil, paneldeki yerini bulmak istiyorum.

timer kodum:
[CODE title="private void timer1_Tick(object sender, EventArgs e) { Point fareImlecYeri = this.PointToClient(Cursor.Position); }"][/CODE]

panel hareket sensör kodum:
[CODE title="private void panel1_Down(object sender, MouseEventArgs e){pictureBox2.Left = Cursor.Position.X; pictureBox2.Top = Cursor.Position.Y;}"][/CODE]
 
Son düzenleme:
Çözüm
Parametrenin değerlerini referans almalısınız.

C#:
private void Panel1_MouseMove(object sender, MouseEventArgs e)
{
     label6.Text = "X: "e.X.ToString() + " Y: " + e.Y.ToString(); 
}
Parametrenin değerlerini referans almalısınız.

C#:
private void Panel1_MouseMove(object sender, MouseEventArgs e)
{
     label6.Text = "X: "e.X.ToString() + " Y: " + e.Y.ToString(); 
}
 
Son düzenleyen: Moderatör:
Çözüm

Yeni konular

Geri
Yukarı