برداشتن مختصات مکان موس برای چند بار
دوستان میخوام برنامه ای بنویسم که مختصات مکان موس رو بهم نشون بده و با کلیک کردن جای کیلیک شده یه لیبل تولید کنه
تو قسمت این که مختصات موس رو هنگام حرکت نشون بدم مشکلی ندارم
فقط تو قسمت اینکه با کیلیک کردن موس مختصات برداشته بشه و لیبل ایجاد بشه مشکل دارم
یعنی فقط یک بار کیلیک رو میتونم نمایش بدم! و برای چند باز نمیتونم اینکار رو بکنم
اگه بخوام به طور نامحدود تا زمانی که مثلا کیلید buttonفشاد داده نشده مختصات بردارم باید چیکار کنم؟
ممنون میشم راهنماییم کنین
ممنون از همتون
نقل قول: برداشتن مختصات مکان موس برای چند بار
مشکلش چیه؟شاید متغیرتونو تو کلیک بعدی رفرش نمیکنین!!!!کدتونو بذارین وگرنه روش کلی تو همون پستی که خودتون زدین،جواب داده شده(https://barnamenevis.org/showthread.p...صات-خاص)
نقل قول: برداشتن مختصات مکان موس برای چند بار
ممنونم
مشکلم حل شد
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 WindowsFormsApplication22
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = "";
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
int x1 = e.X;
int y1 = e.Y;
label1.Text = "" + x1 + "," + y1;
}
private void Form1_MouseClick(object sender, MouseEventArgs e)
{
int x2 = e.X;
int y2 = e.Y;
Label label2 = new Label();
Point p = new Point();
p.X = x2;
p.Y = y2;
label2.Location = p;
label2.Text = "" + x2 + "," + y2;
this.Controls.Add(label2);
}
}
}
ولی هنوز نمیتونم مختصا ت تمام لیبل ها رو ذخیره کنم!
میتونین راهنماییم کنین ؟؟
ممنون ازتون
نقل قول: برداشتن مختصات مکان موس برای چند بار
اگر منظورتونو متوجه شده باشم :
public Form3()
{
InitializeComponent();
}
int i = 0;
int[] Xcoordinate = newint[100];
int[] Ycoordinate = newint[100];
privatevoid Form3_MouseMove(object sender, MouseEventArgs e)
{
int x1 = e.X;
int y1 = e.Y;
label1.Text = "" + x1 + "," + y1;
}
privatevoid Form3_MouseClick(object sender, MouseEventArgs e)
{
Xcoordinate[i] = e.X;
Ycoordinate[i] = e.Y;
Label label2 = newLabel();
Point p = newPoint();
p.X = Xcoordinate[i];
p.Y = Ycoordinate[i];
label2.Location = p;
label2.Text = "" + Xcoordinate[i] + "," + Ycoordinate[i];
this.Controls.Add(label2);
i++;
}
privatevoid Form3_Load(object sender, EventArgs e)
{
label1.Text = "";
}
حالا این دو تا آرایه تمام مختصات لیبل ها رو داره...
نقل قول: برداشتن مختصات مکان موس برای چند بار
ممنون از راهنماییتون
ولی دلیل این کد رو نفهمیدم!
privatevoid Form3_Load(object sender, EventArgs e)
{
label1.Text = "";
}
نقل قول: برداشتن مختصات مکان موس برای چند بار
هیچی همین جوری برای محکم کاری... :چشمک: