PDA

View Full Version : ادامه یک دستور پس از فشردن یک کلید(bottom) خاص



t.zeirani
دوشنبه 13 شهریور 1391, 11:04 صبح
سلام دوستان،چطور میتونم کاری کنم که یه متد خاص تا نیمه انجام بشه بعد اون سیستم منتظر فشردن یک bottom خاص بمونه!
چیزی تو مایه های دستور زیر میخام



do ( ) while (a bottom selection)

:لبخندساده::لبخندساده::لبخن ساده::لبخندساده:

emad4000
دوشنبه 13 شهریور 1391, 18:13 عصر
سلام
شما می تونی متدت رو توی یک Thread بنویسی و بعد Thread رو اجرا کنی
سپس دستور بنویسی که اگر فلان دکمه فشرده شد، اون Thrad متوقف (Pause) بشه
ولی اولاً معلوم نیست کجای متد متوقف بشه و دوماً اگر متد محاسبات سنگینی نداشته باشه سه سوته تا آخرش اجرا میشه، قبل از اینکه شما دکمه ای رو بفشاری

t.zeirani
دوشنبه 13 شهریور 1391, 18:33 عصر
سلام
شما می تونی متدت رو توی یک Thread بنویسی و بعد Thread رو اجرا کنی
سپس دستور بنویسی که اگر فلان دکمه فشرده شد، اون Thrad متوقف (Pause) بشه
ولی اولاً معلوم نیست کجای متد متوقف بشه و دوماً اگر متد محاسبات سنگینی نداشته باشه سه سوته تا آخرش اجرا میشه، قبل از اینکه شما دکمه ای رو بفشاری

یعنی اصلا امکانش نیست که بخوام سیستم وسط متد تا وقتی دکمه مورد نظرم فشرده شه بمونه؟(یعنی یک سری داده رو بگیره بعد ک دکمه فشرده میشه بقیه داده ها رو شروع ب گرفتن کنه)
من تازه کارم اگه امکانش هست ی خورده توضیحات ساده تر بدین ممنون میشم

emad4000
دوشنبه 13 شهریور 1391, 18:46 عصر
یعنی اصلا امکانش نیست که بخوام سیستم وسط متد تا وقتی دکمه مورد نظرم فشرده شه بمونه؟
تا جایی که میدونم نه !!!!


اگه امکانش هست ی خورده توضیحات ساده تر بدین ممنون میشم
همون Thread رو میگین یا راه حل دیگه ؟!؟

t.zeirani
دوشنبه 13 شهریور 1391, 19:01 عصر
تا جایی که میدونم نه !!!!


همون Thread رو میگین یا راه حل دیگه ؟!؟

منظورم راه حل دیگه بود،باز ممنون از راهنماییتون

SokooteShab1
سه شنبه 14 شهریور 1391, 00:28 صبح
فکر می کنم بتونید از یه فلگ استفاده کنید. به این صورت که مقدار پیش فرض اون false باشه و به محض فشرده شدن button مقدارش true شو تابع مورد نظر دوباره فراخوانی بشه و در نهایت false. مقادیر داخل تابع هم بر اساس مقدار فلگ مدیریت بشه.
اگه متد سنگین نباشه و توی سرعت برنامه تاثیری نداشته باشه به جای فراخوانی در button میشه تو timer هم گذاشت که زیاد روش درستی نیست.

t.zeirani
سه شنبه 14 شهریور 1391, 12:28 عصر
فکر می کنم بتونید از یه فلگ استفاده کنید. به این صورت که مقدار پیش فرض اون false باشه و به محض فشرده شدن button مقدارش true شو تابع مورد نظر دوباره فراخوانی بشه و در نهایت false. مقادیر داخل تابع هم بر اساس مقدار فلگ مدیریت بشه.
اگه متد سنگین نباشه و توی سرعت برنامه تاثیری نداشته باشه به جای فراخوانی در button میشه تو timer هم گذاشت که زیاد روش درستی نیست.
سلام،اگر میتونید یه خورده با کد نویسی برام توضیح بدین

mhsmity
سه شنبه 14 شهریور 1391, 12:45 عصر
سلام
مثل برنامه نویسی ConsoleApplication وقتی از متد Console.ReadKey();
ااستفاده می کنیم
برنامه متوقف می شود و منتظر فشرده شدن یک کلید می ماند بلافاصله بعد از فشرده شدن کلید برنامه ادامه پیدامی کند.

t.zeirani
سه شنبه 14 شهریور 1391, 17:26 عصر
سلام
مثل برنامه نویسی ConsoleApplication وقتی از متد Console.ReadKey();
ااستفاده می کنیم
برنامه متوقف می شود و منتظر فشرده شدن یک کلید می ماند بلافاصله بعد از فشرده شدن کلید برنامه ادامه پیدامی کند.
دقیقا منطورم همین هستش فقط میخام یکی از دکمه روی فرم همچین کاری برام انجام بده،اگه همچنین چیزی میشه میتونی با کد برام توضیح بدی؟

yashar_sb_sb
سه شنبه 14 شهریور 1391, 17:37 عصر
دقیقا بگو که قراره توی چه برنامه ای ازش استفاده کنی، تا جوابتو بگم.

m0hammad_01
سه شنبه 14 شهریور 1391, 17:52 عصر
سلام دوستان،چطور میتونم کاری کنم که یه متد خاص تا نیمه انجام بشه بعد اون سیستم منتظر فشردن یک bottom خاص بمونه!
چیزی تو مایه های دستور زیر میخام



do ( ) while (a bottom selection)
:لبخندساده::لبخندساده::لبخن ساده::لبخندساده:




سلام
بیاید به مساله ساده نگاه کنیم
شما میخوای یه چند خط کد اجرا شه، به جای خاصی رسید، منتظر بمونه تا کاربر یه دکمه ای رو کلیک کنه،بعد که کلیک کرد ادامش اجرا شه دیگه؟ درسته؟

خوب راه حل : (کدت رو به دو تا کد بشکون)
- شما کدی که قراره اول اجرا شه رو تو یک متد بزار(یعنی تا اونجایی که قراره متوقف شه و منتظر بمونه) و هر موقع خواستی اجراش کن.
- بقیه کدش رو بزار تو کلیک دکمه هه
هر موقع کاربر کلیک کرد، ادامه کار کدت رو انجام میده دیگه :بامزه::لبخند::چشمک: