PDA

View Full Version : حرفه ای: پنجره یا انیمیشن انتظار چند ثانیه ای برای کاربر



roxe77
چهارشنبه 22 شهریور 1391, 01:35 صبح
سلام من یه برنامه نوشتم که بانکش تو اینترنت هست وقتی تو برنامه کاربر میخواد اطلاعاتی رو از بانک بخونه با توجه به سرعت اینترنت 2 تا چند ثانیه سیستم هنگ میکنه تا اطلاعات خونده بشه میخوام در این بازه سیستم هنگ نکنه و یه انیمیشن انتظار در حال بارگذاری اطلاعات رو نمایش بدم کسی میتونه کمکم کنه؟

Golsha
چهارشنبه 22 شهریور 1391, 22:27 عصر
سلام دوست عزیز اگه منظورت استفاده از ProgressBar هست که نمیدونم ولی اگه منظورت مثلا نمایش Please Wait ... هست باید بگم که میتونی قبل از اینکه اطلاعات رو بخونی و توی متغیر بریزی اون متغیر رو کاملا خالی کنی و پنجره Please Wait رو نمایش بدی و بایه شرط توی یه تایمر بررسی کنی وقتی که اطلاعات لود شد و داخل متغیر ریخته شد (درواقع اون متغیر Empty = False شد) پنجره Please Wait بسته بشه.

roxe77
پنج شنبه 23 شهریور 1391, 01:20 صبح
سلام دوست عزیز
نه منظورم پرگرس بار نیست چیزی که میخوام اینه که موقعه ای که به دیتا بیس متصل میشم یعنی داده ها خونده میشه 2-3 ثانیه ای هنگ میکنه تا اطلاعات لود بشه تعداد گرید ها و پنجره هایی که گزارش گیری میشه زیاده میخوم کاری کنم که اون موقع یه pleas wait یا انیمیشنی مثل اون پخش بشه تا کاربر موقع هنگ جایی کلیک نکنه یا فک نکنه نرم افزار هنگ کرده همین

Hybrid
پنج شنبه 23 شهریور 1391, 09:03 صبح
نه منظورم پرگرس بار نیست چیزی که میخوام اینه که موقعه ای که به دیتا بیس متصل میشم یعنی داده ها خونده میشه 2-3 ثانیه ای هنگ میکنه تا اطلاعات لود بشه تعداد گرید ها و پنجره هایی که گزارش گیری میشه زیاده میخوم کاری کنم که اون موقع یه pleas wait یا انیمیشنی مثل اون پخش بشه تا کاربر موقع هنگ جایی کلیک نکنه یا فک نکنه نرم افزار هنگ کرده همین

سلام ، مشکل شما اینه که کل بار پردازشی برنامه رو روی thread اصلی برنامه گذاشتین واسه همینه که User Interface برنامتون واسه چند ثانیه هنگ میکنه ، شما میتونید پردازشتون رو داخل Thread دیگه انجام بدین و سربار رو روی Thread اصلی بردارین تا User interface برنامه همچنان در دسترس قرار بگیره یا میتونین به قول خودتون یک فرمی بیارین و چند ثانیه نشونش بدین تا کاربر خیال نکنه برنامه قفل شده ،

در هر صورت مسئله شما با Threading به راحتی قابل حله و باید روی این مبحث تسلط داشته باشید.

موفق باشید

barnamenevisforme
پنج شنبه 23 شهریور 1391, 11:43 صبح
سلام
همون طور که دوست جناب سیاوش ابراهیمی فرمودند،شما باید در برنامه از نخ یا thread استفاده کنید:
http://barnamenevis.org/showthread.php?275344
یه راه حل جالبی هم یه جایی توی یکی از تاپیک ها دیده بودم،بد نیست اونم یه نگاه بندازید:
http://kandoj.ir/wp-content/uploads/2012/05/%D8%B1%D8%A7%D9%87%DA%A9%D8%A7%D8%B1-%D8%B3%DB%8C%D8%AA%D8%B1%DB%8C%DA%A9%D8%B3-%D8%B4%D8%B1%DA%A9%D8%AA-%D9%85%D9%87%D9%86%D8%AF%D8%B3%DB%8C-%D8%B4%D8%A8%DA%A9%D9%87-%DA%A9%D9%86%D8%AF%D9%88%D8%AC.pdf