اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
سلام دوستان خسته نباشید...!
من چطور می تونم وقتی روی یک button کلیک میکنم رویداد کلیک هی تکرار نشه تا وقتی که کلیک رو بر نداشتم...!
مثلا من برای پورت سریال یک رشته میفرستم و تا وقتی button فشرده شده رشته هی ارسال بشه؟!
و با برداشتن کلیک دیقه ارسال نشه!
ممنون
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
با دو روش میشه این کار رو انجام داد:
۱- به جای event کلیک از mouseDown استفاده کنید و تا زمانی که mouseDown هست کار مورد نظر رو انجام بدید و با MouseUp متوقفش کنید.
۲- از Toggle Button ها استفاده کنید.
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
با سلام
یک مثال ساده برات میزنم امیدوارم متوجه بشی :
private static int a;
private void timer1_Tick(object sender, EventArgs e)
{
Text = (++a).ToString();
}
private void button1_MouseUp(object sender, MouseEventArgs e)
{
timer1.Enabled = false;
}
private void button1_MouseDown(object sender, MouseEventArgs e)
{
timer1.Enabled = true;
}
در کد بالا هر بار روی دکمه کلیک موس رو میگیری یک بار به a اضافه میکنه تا زمانی که کلیک موس رو ازحالا down به حالت up ببری
موفق باشی
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
ممنون فهمیدم...!
فقط یه مشکل این است که وقتی برنامه زیر رو امتحان کردم خطا داد میشه لطف کنید اشکالش رو بگید!
بازم ممنون
for (intlable = 1; intlable >0; intlable++)
{
intlable += 1;
if (MouseDown==true)
break;
}
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
چه اروری دادی ؟
این MouseDown چیه ؟ اگر event هست که جای تعجب نیست که ارور بده.
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
بله event من تازه کارم!:ناراحت:
این رو باید کجا وارد کنم؟!
ممنون
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
خب دوست عزیز بگید میخوایید چیکار کنید تا راحت بشه توضیح داد. این for برای چیه. چه کاری رومیخوایید انجام بدید
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
ممنون
می خوام وقتی روی یک Button کلیک کردم هی یه رشته به پورت سریال ارسال بشه و با برداشتن Button دیگه رشته ارسال نشه!
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
خب در بالا یک مثال زدم کد ارسال رشته رو بذار تو رویداد MouseDown
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
خوب تا وقتی من کلیک رو ول نکردم این رشته هی به پورت سریال ارسال میشه یا فقط یک بار ارسال میشه؟
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
یک بار ارسال میشه اگر مستقیم بذار تو رویداد MouseDown . در مثال بالا timer رو ببینید. کار تایمر اینه که کد رو برای شما تکرار میکنه. در فاصله زمانی که شما برای تعیین میکنید
نقل قول: اجرای event کلیک button تا زمانی که دکمه ماوس پایین هست
سلام دوست عزیز این قطعه کد رو هم تست کن
private void button1_MouseUp(object sender, MouseEventArgs e)
{
eventname.cansel = false;
}