C# – Tıklanan İki Noktanın Mesafesinin Hesaplanması
Arka arkaya tıklanan form üzerindeki 2 noktayı ekrana çizen ve arasındaki mesafeyi messagebox ile gösteren uygulama.
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(); } Random q = new Random(); int birposy; int birposx; int ikiposy; int ikiposx; int count = 0; int kirmizi = 125; int yesil = 125; int sari = 125; private void Form1_MouseClick(object sender, MouseEventArgs e) { // if (count<1) { birposx = Cursor.Position.X; birposy = Cursor.Position.Y; count = count + 1; Graphics cizgi; Pen Kalem = new Pen(Color.FromArgb(yesil,kirmizi,sari), 5); cizgi = this.CreateGraphics(); if (checkBox1.Checked ==true) { cizgi.Clear(Form.DefaultBackColor); } cizgi.DrawLine(Kalem, Cursor.Position .X, Cursor.Position .Y, Cursor.Position.X+2, Cursor.Position.Y+2); cizgi.Dispose(); } else if(count ==1) { ikiposx = Cursor.Position.X; ikiposy = Cursor.Position.Y; Graphics cizgi; Pen Kalem = new Pen(Color.FromArgb(yesil, kirmizi, sari), 5); cizgi = this.CreateGraphics(); cizgi.DrawLine(Kalem, Cursor.Position.X+2, Cursor.Position.Y+2, Cursor.Position.X, Cursor.Position.Y); int islem = (birposx - ikiposx)*(birposx -ikiposx); int islem2 = (birposy - ikiposy) * (birposy - ikiposy); count = 0; MessageBox.Show(Math.Sqrt(islem+islem2)+" "+"kadar fark var"); birposx = 0; birposy = 0; ikiposx = 0; ikiposy = 0; kirmizi = q.Next(1, 256); yesil = q.Next(1, 256); sari = q.Next(1, 256); } } private void Form1_Load(object sender, EventArgs e) { this.WindowState = FormWindowState.Maximized; this.Text = "Mesafe farkı bulucusu"; } } }