PDA

View Full Version : حرفه ای: ضبط حرکات موس



User_Soual
چهارشنبه 15 اسفند 1397, 20:21 عصر
سلام خسته نباشید
من میخوام حرکات موس ضبط کنم البته به صورت تصویری نمیخوام
مثلا می خوام طرف باتن start record رو بزنه سپس کار هایی که میخواد تکرار بشه رو انجام بده سپس وقتی ctrl+f3 رو زد حرکات موس ضبط شده باشه
حالا اگر start action رو زد اون کارو برای مثلا ۵ بار انجام بده

ali7rangoo
پنج شنبه 16 اسفند 1397, 05:51 صبح
سلام خسته نباشید
من میخوام حرکات موس ضبط کنم البته به صورت تصویری نمیخوام
مثلا می خوام طرف باتن start record رو بزنه سپس کار هایی که میخواد تکرار بشه رو انجام بده سپس وقتی ctrl+f3 رو زد حرکات موس ضبط شده باشه
حالا اگر start action رو زد اون کارو برای مثلا ۵ بار انجام بده
سلام.macro recorder

alexmcse
پنج شنبه 16 اسفند 1397, 15:57 عصر
حرکات موس

//بدست آوردن حرکات موس private void Form15_MouseClick(object sender, MouseEventArgs e)
{
points.Add(new Point(e.X, e.Y));
}


private void button5_Click(object sender, EventArgs e)
{
string s = "";
foreach (var VARIABLE in points )
{
s = s + VARIABLE.X + "," + VARIABLE.Y + Environment.NewLine;
}
MessageBox.Show(s);
}

User_Soual
جمعه 17 اسفند 1397, 09:43 صبح
از آقای alex ممنونم

ولی کسی نیست توضیح کامل تری بگه
مثلا توی یک مختصاتی دابل کلیک کرده چجوری ذخیره و دوباره استفاده کنم

Mahmoud Zaad
جمعه 17 اسفند 1397, 10:04 صبح
با سلام
شما می تونید یه لیست داشته باشید و در رویدادهای مربوطه یک رکورد به لیست اضافه کنید. یعنی باید نوع و نام کنترلی که عملیات روش انجام شده (مثلا دکمه، چک باکس، گرید و ...) + نوع عملیات (دابل کلیک، کلیک، حرکت و ...) + نقطه مربوطه رو در لیست ذخیره کنید.
موقع بازیابی هم باید اطلاعات هر ردیف رو بررسی کنید که اولا چه کنترل هست و اسمش چیه ثانیا چه عملیاتی هست و ثالثا در کدام نقطه است.
مثلا میشه اطلاعات رو در یک رشته ذخیره و بعدا تحلیل کرد:
List<string> _myList=new List<string>();
حالا به فرض در رویداد دابل کلیک:
_myList.Add("doubleClick"+";"+"Button"+";"+"myButton1"+";"+"110"+","+"50");
در کد بالا اولا مشخص کردیم که عملیات دابل کلیک در دکمه myButton1 هست و ثانیا در نقطه ی 110 و 50 این اتفاق افتاده.
حالا موقع بازیابی شما باید این رشته رو با استفاده از متد split و کاراکترهای ; و , تجزیه کنید.
بعد برای تکرار عملیات باید با توجه به نوع و نام کنترل، رویداد مربوطه رو فراخوانی کنید مثلا برای دابل کلیک:
myButton1_DoubleClick(sender, null);
کد بالا رویداد دابل کلیک دکمه رو اجرا می کنه.

به نظرم با این روش می تونید کار رو شروع کنید و کم کم مشکلات رو حل کنید تا به نتیجه برسید.

User_Soual
جمعه 17 اسفند 1397, 16:19 عصر
ممنون
ولی من توی فرم خودم رو نمیگم
یک جورایی میخوام micro recorder بسازم