تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 2 از 4 اولاول 1234 آخرآخر
نمايش نتايج 11 به 20 از 31

نام تاپيک: جلوگیری از اجرای دستور click در هنگام doubleclick در notifyicon

  1. #11
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    راستش برنامه من یه آیکون در نوار استارت کنار ساعت داره (notifyicon) که وقتی روی آیکون کلیک راست می کنم یک منو باز میشه . و وقتی روی آیکون تک کلیک(چپ) می کنم فرم ۱ باز میشه و وقتی دابل کلیک می کنم فرم ۲ باز میشه.
    مشکل اینجاست که فرم اول من توش کنترل زیاد داره و حجم دستورایی هم که توش اجرا و انجام میشه زیاده برای همین موقع باز شدنش کمی تاخیر ایجاد میشه و زمان میبره.
    حالا وقتی روی آیکون دابل کلیک کنم وقتی میخواد فرم ۲ اجرا بشه اول دستور تک کلیک که همون اجرای فرم ۱ (فرم سنگین) هست اجرا میشه و همین باعث میشه که فرم ۲ که فرم سبکی هست با تاخیر اجرا بشه که این موضوع آزار دهنده است.
    به نظر شما استفاده از نخ (threadin) البته اگه درست نوشته باشم روش مناسبیه؟ البته من تا حالا باهاش کار نکردم نمیدونم چجوریه ولی به نظرتون میشه از طریق thread کاری کرد که هردو دستور با هم اجرا بشه همزمان, که اون تاخیر ایجاد نشه؟ و مجبور نباشیم که صبر کنیم تا دستورات کلیک ابتدا به صورت کامل اجرا بشه(اجرا شدن فرم ۱ ) و سپس دستورات دابل کلکیک (اجرا شدن فرم ۲ ) .
    بله شما برای حرفه ای بدون برنامه راهی جز استفاده از نخ ندارید (حداقلش اینکه به ذهن من نمیرسه ) . با اقا علی موافقم

    در اصل نخ تاخیر ایجاد میکنه همانند تایمر به شما زمان میدهد که کلیک یا دبل کلیک بودن رو تشخیص بدهید البته استفاده از نخ خیلی اصولی تر و حرفه ای تر هست

  2. #12
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    سلام.
    بله شما باید از Task یا Thread استفاده کنید و رویداد کلیک رو با تاخیر اجرا کنید مثلاً توی 1 ثانیه چک کنید اگر دابل کیک شد رویداد کلیک دیگه کنسل میشه و اگر توی یک ثانیه دابل کلیک نشد رویداد کلیک رو اجرا کنید.
    هیچ راه دیگه ای به ذهنم نمیرسه چون رویداد کلیک همیشه زودتر از دابل کلیک اجرا میشه.
    بله شما برای حرفه ای بدون برنامه راهی جز استفاده از نخ ندارید (حداقلش اینکه به ذهن من نمیرسه ) . با اقا علی موافقم

    در اصل نخ تاخیر ایجاد میکنه همانند تایمر به شما زمان میدهد که کلیک یا دبل کلیک بودن رو تشخیص بدهید البته استفاده از نخ خیلی اصولی تر و حرفه ای تر هست

    راستش من تا حالا از نخ استفاده نکردم نمیدونم چه جوری کار می کنه. کدی چیزی دارید که بتونم ازش استفاده کنم ؟ یا بفهمم چه طور باید از نخ استفاده کنم.

  3. #13
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    راستش من تا حالا از نخ استفاده نکردم نمیدونم چه جوری کار می کنه. کدی چیزی دارید که بتونم ازش استفاده کنم ؟ یا بفهمم چه طور باید از نخ استفاده کنم.
    تستش نکردم امیدوارم خودت بقیه اش رو بری:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

  4. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است


  5. #14
    کاربر فعال تالار .Net Msba's Avatar
    تاريخ عضويت
    Dec 2006
    محل سكونت
    ! My Mind
    پست ها
    506

    پيش فرض

    ضمن احترام و گران قدر دانستن نظر تمامی دوستان، بهتر از برخی ابهام ها در تاپیک رو این طوری توضیح دهم:
    به نظر میاد که به خاطر یک کلیک بخواهیم برنامه رو در گیر تایمر کنیم و سرعت رو کمی پایین بیاره.
    تایمر ها سرعت برنامه را کم نمی کنند، بلکه Thread اصلی که به فرم یا object جاری اختصاص داده شده است را زمان بند می کنند. در صورتی هم که Thread جاری کاملا درگیر باشد، به علت event محور بودن، فایر نمی شوند. در صورتیکه تعداد زمان بند ها در یک Thread افزایش یابد، حالتی شبیه round robin به وجود می آید( آن چیزی که در OS باعث می شود فکر کنیم همه ی کار ها با هم انجام می شود.) به وجود آوردن چنین حالتی در Thread اصلا کار اصولی نیست. در این حالت است که جمله ی بیان شده مبنی بر کند کردن توسط تایمر پر رنگ می شود، کند خیر، ناهمگون می شود! چون مدت زمان اجرای Timer ها کلا وابسته به هم می شود.
    اینک تایمر توی برنامه زیاد بشه یکم غیر حرفه ای
    دقیقا. به همین علت است. در ضمن مگر قبلا چند تایمر داشته اید که یک تایمر برنامه ی شما را در این حالت ببرد؟
    در اصل نخ تاخیر ایجاد میکنه همانند تایمر به شما زمان میدهد که کلیک یا دبل کلیک بودن رو تشخیص بدهید البته استفاده از نخ خیلی اصولی تر و حرفه ای تر هست
    ضمن اینکه این جمله ممکن است در اینجا صحیح باشد، این جمله در همه جا صحیح نیست. هر کدام جهت کاری مناسب هستند. همان طور که در بالا بیان شد، تایمر زمان بند است و Thread ها مجموعه دستورات اجرایی به صورت موازی. از نظر تعریفی این دو با هم وجه تشابهی ندارند و در توضیح تکمیلی می توان گفت که Thread می تواند زمان بندی شود و مانند تایمر کار کند(مانند مثال علی آقا)
    سوال اصلی) آیا Thread دیگری را زمان بند کنیم بهتر است یا Thread جاری را Time Slice کنیم؟
    اگر قرار است وظیفه ای طولانی را در زمان بند های خود اجرا کنیم، طوری که درگیری کد طوری باشد که زمان بندی بخش های دیگر را تحت تاثیر قرار دهد، قطعا روش زمان بندی Thread بهتر از Timer است. در غیر این صورت روش Timer بهتر است. چرا؟
    1- ایجاد هر Thread و حذف آن یک بار پردازشی بر روی OS دارد.
    2- به ازای هر Thread که ایجاد می شود یک Stack Watermark ایجاد می شود.
    3- به ازای هر Thread که ایجاد می شود ده ها پراپرتی می بایست sync شوند.
    4- در صورت نیاز، دسترسی Thread ها به حافظه ی private هر Thread دیگر باید توسط invoke انجام شود.
    و ...
    تمامی این موارد از نظر بهینه بودن حافظه و پردازش خود یک سوال ایجاد می کند. و در این جا دیگر نمی توان گفت استفاده از Thread حرفه ای تر است!

    با توجه به مطالب بیان شده، آیا برای نمایش یک فرم نیاز است تا Thread ایجاد شود؟
    این سوال دو پاسخ دارد:
    1- اگر فرم طوری نمایش داده شود و رفتار Modal (غیر فعال شدن فرم جاری(parent) و فعال شدن فرم جدید مد نظر) داشته باشد، آنگاه Thread الزامی است.
    2- اگر فرم باز شونده رفتار Modal نداشته باشد، آنگاه با توجه به بار پردازشی کم، به Thread جدیدی نیاز نیست.

    bool singleClick = false;
    این خط احتمال خطا دارد. متغیر عمومی که بدین صورت تعریف شود نمی تواند Thread Safe باشد. می بایست متغیر volatile نیز باشد.
    ThreadSafe: دسترسی همزمان به یک نباید باعث خطا در خواندن و نوشتن و یا تاخیر در آن شود.

    مثال با تایمر این عمل را روی وین فرم، در [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] می توانید دریافت کنید. (کد نوشته شده بسیار کثیف است، حال نداشتم)

    موفق باشید.

  6. 2 کاربر از Msba بخاطر این مطلب مفید تشکر کرده اند


  7. #15
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    این خط احتمال خطا دارد. متغیر عمومی که بدین صورت تعریف شود نمی تواند Thread Safe باشد. می بایست متغیر volatile نیز باشد.
    در کد نوشته شده، هیچ احتمال خطایی وجود نداره، میتونید توضیح بدید چطوری ممکنه نرم افزار به خطا بخوره وقتی متغیر singleClick در ترد اصلی وقتی روی دکمه کلیک میشه مقدارش تغییر میکنه و در کلیک های بعدی به هیچ عنوان عمل نمی کنه مگر اینکه تسک ساخته شده به پایان برسه و مقدار رو مجدد false کنه؟ این متغیر به هیچ عنوان نمیتونه به طور همزمان در دو ترد مقدار دهی بشه که شما اصرار بر volatile تعریف شدنش دارید.
    چطوری محاسبه کردید که احتمال خطا وجود داره؟ دوس دارم بدونم، تشکر.
    از نظر خودم فقط در صورتی این متغیر دیگه مقدار دهی نمیشه که خط اجرایی تسک به انتها نرسه، که این به volatile مربوط نمیشه!

  8. #16
    کاربر فعال تالار .Net Msba's Avatar
    تاريخ عضويت
    Dec 2006
    محل سكونت
    ! My Mind
    پست ها
    506

    پيش فرض

    علی آقا شما از استادان بنده هستید که خیلی قبولشان دارم. اگر جسارتی کردم، ببخشید.
    مقدار دهی بشه که شما اصرار بر volatile تعریف شدنش دارید.
    بنده غلط بکنم اصراری داشته باشم. اما شرح ما وقع این است:
    همان طور که در بالا بیان شد، Thread Safe همیشه به معنای دو write همزمان نیست. این واژه در سه حالت معنا می دهد:
    1- نوشتن - نوشتن
    2- نوشتن - خواندن
    3- خواندن - نوشتن

    فرض شما در حالت اول صحیح است. اما اگر در زمان نوشتن false در task، عمل رویداد جهت خواندن فراهم شود، آنگاه چه می شود؟ رویداد کنسل می شود در صورتی که کار اصلی در task به اتمام رسیده است. دراینجا فوق فوقش کاربر مجبور است یک بار دیگر کلیک کند! می توان این را به گونه ای خطا دانست. برای همین دلیلی بر اصرار تا اینجا و در اینجا نیست.
    اما اگر event توسط ماشین زده شود مانند اتمام یک عمل Async یا دریافت اطلاعات و ... ، آنگاه ماشین دوبار رویداد نمی فرستد. برای همین به صورت یک رفتار امن ترجیح می دهم چنین متغیر هایی volatile تعریف شوند حتی در این مثال.
    حال مسئله را کمی ریز تر کنیم (البته ذکر این مورد در فرض تاپیک خود را نشان نمی دهد جلو تر علت بیان می شود...)، فرض کنید هر دو Thread در یک core از پردازنده انجام شود. با فرض اینکه پردازنده Hyper Thread ندارد، و پردازنده در حال اجرای دستور تغییر متغیر در task است و در این میان OS، سوییچ کرده و عمل read در thread دیگر را انجام می دهد. توضیح: در یک پردازنده ی 32 بیتی، اکثر اعمال 64بیتی، نمی تواند در یک کلاک انجام شود. این یعنی اگر دو کلاک لازم باشد کار انجام شود و یک کار آن انجام شده باشد و کار دوم آن مانده باشد و در این حالت OS سراغ فرمان دیگری جهت خواندن رفته باشد آنگاه اطلاعات اشتباه خوانده می شود در یک توضیح عددی:
    پردازنده باید عدد 64 بیتی 0xff00ff00ff00ff00 را درون حافظه بریزد و در حالی که فقط در هر کلاک 32 بیت آن را می تواند بریزد و در این هنگام عمل سوییچ انجام شود، Thread دیگر به جای خواندن این عدد، به اشتباه 0xff00ff0000000000 را می خواند. چون هنوز بخش دوم در حافظه کپی نشده است. حال volatile کردن برای کامپایلر این توضیح را به عمل می آورد که باید رفتاری کامل انجام شود و سپس read صورت گیرد اما این باز هم پایان کار نیست.(مبحث lock، خارج از بجث است.) در صورتی هم ممکن است که عمل انجام شده باشد یعنی هر دو انتقال؛ ولی هنوز مقادیر در کش به روز رسانی نشده باشند آنگاه یک عمل update نیاز است تا وضعیت کش بهبود پیدا کند.(volatile در این مسیر پررنگ تر است.) گاهی چندین سرکشی ممکن است به یک متغیر معمولی انجام شود تا مقدار واقعی آن از کش خوانده شود. یعنی در موضوع تاپیک، ممکن است چندین کلیک کاربر از بین رود، خصوصا زمانی که حجم مصرفی رم بالا و پردازنده دارای usage باشد.(هر چند که فقط یک احتمال است و کاربر بسیار بسیار کندتر از ماشین و احتمال قابل صرفه نظر ولی موجود، قانون مورفی!!!جهت خنده [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] کنید، بخش مهندسیش فقط درسته که مربوط به ماشین آلاته بقیش مربوط به بحث مانیست)

    در بالا بیان شد که مثال 64 بیت در شرح تاپیک دیده نمی شود، چرا؟ چون متغیر bool یک متغیر atomic است. متغیر atomic متغیری است که تنها یک دستور برای اجرا نیاز دارد و هیچگاه حالت چند دستوری به خود نمی گیرد. لذا مقدار غلط در آن وجود ندارد و فقط شرط به روز رسانی در کش ملاک است.

    کوچیکتیم علی آقا.

    موفق باشید.

  9. #17
    کاربر فعال تالار .Net Msba's Avatar
    تاريخ عضويت
    Dec 2006
    محل سكونت
    ! My Mind
    پست ها
    506

  10. #18
    کاربر فعال انجمن دات نت عــــلی's Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    زیر سایه عرش الهی
    پست ها
    2,335

    پيش فرض

    علی آقا شما از استادان بنده هستید که خیلی قبولشان دارم. اگر جسارتی کردم، ببخشید.

    بنده غلط بکنم اصراری داشته باشم. اما شرح ما وقع این است:
    همان طور که در بالا بیان شد، Thread Safe همیشه به معنای دو write همزمان نیست. این واژه در سه حالت معنا می دهد:
    1- نوشتن - نوشتن
    2- نوشتن - خواندن
    3- خواندن - نوشتن

    فرض شما در حالت اول صحیح است. اما اگر در زمان نوشتن false در task، عمل رویداد جهت خواندن فراهم شود، آنگاه چه می شود؟ رویداد کنسل می شود در صورتی که کار اصلی در task به اتمام رسیده است. دراینجا فوق فوقش کاربر مجبور است یک بار دیگر کلیک کند! می توان این را به گونه ای خطا دانست. برای همین دلیلی بر اصرار تا اینجا و در اینجا نیست.
    ......
    خیلی ممنون از توضیحاتتون راضی به زحمت نیستم اما شاید متوجه سوال من نشدید.
    من پرسیدم در چه زمانی "کد نوشته شده" به خطا خواهد خورد یا احتمال خطا خواهد داشت؟ برداشت من از خطا در کد بالا در واقع همون باگ هست نه چیز دیگه، شما دارید مثال هایی میزنید که "غیر" از کد نوشته شده هست و این در حالی هست که بنده خودم به این امر واقف هستم، بله در صدتا مثال دیگه ممکنه به خطا بخوره! چه در سیستم 64 بیتی و چه در سیستم 32 بیتی یا هر سیستم و سیستم عامل دیگری متغیر singleClick به طور همزمان در "دو ترد" فراخوانی نخواهد شد (write)،کد نوشته شده در واقع مثال شما رو توجیه نمیکنه چون کاربر بعد از یکبار کلیک میتونه 100 باز دیگه هم کلیک کنه. و کدی نوشته نشده که دکمه ی کلیک رو غیر فعال کنه و در واقع اتفاقی نیوفته، بنابراین اگر در دو ترد بالا همزمان مقدار singleClick خونده بشه، باز هم همون اتفاقی خواهد افتاد که توی صدبار کلیک دیگر افتاده و مقدار false برگردونده شده و تسک کلیک اجرا نخواهد شد. به طور ساده تر در کد مورد نظر متغیر singleClick فقط باید وقتی اجرا بشه که کار تسک به اتمام رسیده باشه و به قول شما اگر در هنگام write شرط read در رویداد کلیک فراخونی بشه باز هم مقدار false یا true خواهد بود و همون اتفاقی خواهد افتاد که در تعریف متغیر در حالت volatile رخ خواهد داد... وقتی میگیم خطایی رخ داده یا احتمال خطا وجود داره که در دریافت متغیر به exception برخورد کنیم یا عملکرد الگوریتم به درستی عمل نکنه.شما اگر الگوریتم کد نوشته شده رو رسم کنید میبینید که هیچ احتمال خطایی وجود نداره، در هر حال ممنون از توضیحاتتون.
    موفق باشید.

  11. این کاربر از عــــلی بخاطر این مطلب مفید تشکر کرده است


  12. #19
    کـاربـر بـاسـابـقـه szh_1367's Avatar
    تاريخ عضويت
    Apr 2007
    پست ها
    1,007

    پيش فرض

    ضمن احترام و گران قدر دانستن نظر تمامی دوستان، بهتر از برخی ابهام ها در تاپیک رو این طوری توضیح دهم:

    تایمر ها سرعت برنامه را کم نمی کنند، بلکه Thread اصلی که به فرم یا object جاری اختصاص داده شده است را زمان بند می کنند. در صورتی هم که Thread جاری کاملا درگیر باشد، به علت event محور بودن، فایر نمی شوند. در صورتیکه تعداد زمان بند ها در یک Thread افزایش یابد، حالتی شبیه round robin به وجود می آید( آن چیزی که در OS باعث می شود فکر کنیم همه ی کار ها با هم انجام می شود.) به وجود آوردن چنین حالتی در Thread اصلا کار اصولی نیست. در این حالت است که جمله ی بیان شده مبنی بر کند کردن توسط تایمر پر رنگ می شود، کند خیر، ناهمگون می شود! چون مدت زمان اجرای Timer ها کلا وابسته به هم می شود.

    دقیقا. به همین علت است. در ضمن مگر قبلا چند تایمر داشته اید که یک تایمر برنامه ی شما را در این حالت ببرد؟

    ضمن اینکه این جمله ممکن است در اینجا صحیح باشد، این جمله در همه جا صحیح نیست. هر کدام جهت کاری مناسب هستند. همان طور که در بالا بیان شد، تایمر زمان بند است و Thread ها مجموعه دستورات اجرایی به صورت موازی. از نظر تعریفی این دو با هم وجه تشابهی ندارند و در توضیح تکمیلی می توان گفت که Thread می تواند زمان بندی شود و مانند تایمر کار کند(مانند مثال علی آقا)
    سوال اصلی) آیا Thread دیگری را زمان بند کنیم بهتر است یا Thread جاری را Time Slice کنیم؟
    اگر قرار است وظیفه ای طولانی را در زمان بند های خود اجرا کنیم، طوری که درگیری کد طوری باشد که زمان بندی بخش های دیگر را تحت تاثیر قرار دهد، قطعا روش زمان بندی Thread بهتر از Timer است. در غیر این صورت روش Timer بهتر است. چرا؟
    1- ایجاد هر Thread و حذف آن یک بار پردازشی بر روی OS دارد.
    2- به ازای هر Thread که ایجاد می شود یک Stack Watermark ایجاد می شود.
    3- به ازای هر Thread که ایجاد می شود ده ها پراپرتی می بایست sync شوند.
    4- در صورت نیاز، دسترسی Thread ها به حافظه ی private هر Thread دیگر باید توسط invoke انجام شود.
    و ...
    تمامی این موارد از نظر بهینه بودن حافظه و پردازش خود یک سوال ایجاد می کند. و در این جا دیگر نمی توان گفت استفاده از Thread حرفه ای تر است!

    با توجه به مطالب بیان شده، آیا برای نمایش یک فرم نیاز است تا Thread ایجاد شود؟
    این سوال دو پاسخ دارد:
    1- اگر فرم طوری نمایش داده شود و رفتار Modal (غیر فعال شدن فرم جاری(parent) و فعال شدن فرم جدید مد نظر) داشته باشد، آنگاه Thread الزامی است.
    2- اگر فرم باز شونده رفتار Modal نداشته باشد، آنگاه با توجه به بار پردازشی کم، به Thread جدیدی نیاز نیست.


    این خط احتمال خطا دارد. متغیر عمومی که بدین صورت تعریف شود نمی تواند Thread Safe باشد. می بایست متغیر volatile نیز باشد.
    ThreadSafe: دسترسی همزمان به یک نباید باعث خطا در خواندن و نوشتن و یا تاخیر در آن شود.

    مثال با تایمر این عمل را روی وین فرم، در [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ] می توانید دریافت کنید. (کد نوشته شده بسیار کثیف است، حال نداشتم)

    موفق باشید.
    زیاد سخت نگیر قرار نیست برنامه ساخت فضاپیما به کره مریخ رو بنویسیم

    استفاده از thread همانند استفاده از چاقو هست اگر درست ازش استفاده کنید بسیار کارامد خواهد بود در غیر این صورت ابزاری خطرناک خواهد بود

    درصورتی که شما به درستی از thread استفاده کنید قطعا ابزاری حرفه ای تر از تایمر خواهد بود

  13. #20
    پروفشنال shadmehrshadow1's Avatar
    تاريخ عضويت
    Oct 2009
    پست ها
    842

    پيش فرض

    خیلی ممنون از دوستان عزیز که وقت گذاشتن و استفاده کردیم از توضیحاتشون.


    مثال با تایمر این عمل را روی وین فرم، در اینجا می توانید دریافت کنید. (کد نوشته شده بسیار کثیف است، حال نداشتم)

    موفق باشید.
    در کد نوشته شده، هیچ احتمال خطایی وجود نداره، میتونید توضیح بدید چطوری ممکنه نرم افزار به خطا بخوره وقتی متغیر singleClick در ترد اصلی وقتی روی دکمه کلیک میشه مقدارش تغییر میکنه و در کلیک های بعدی به هیچ عنوان عمل نمی کنه مگر اینکه تسک ساخته شده به پایان برسه و مقدار رو مجدد false کنه؟ این متغیر به هیچ عنوان نمیتونه به طور همزمان در دو ترد مقدار دهی بشه که شما اصرار بر volatile تعریف شدنش دارید.
    ممنونم .اما دوستمون درست میگن سورسی که شما گذاشتید از دستور تک کلیک فقط یک بار میشه استفاده کرد و اگه بخوایم مجددا دوباره دستور تک کلیک رو اجرا کنیم دیگه کار نمیکنه.


    تستش نکردم امیدوارم خودت بقیه اش رو بری:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    من از وی بی دات نت استفاده می کنم . تبدیلش کردم به وی بی حالا نمیدونم شاید بد تبدیلش کردم ولی خیلی بد کار می کرد این کد، به صورتی که هی فرم یک باز میشه و بسته میشه. توی حالت عادی بدون استفاده از نخ و تایمر این اتفاق کمتر میفته.

    ______________

    نمدونم والا ، فرم 1 که سنگین هست. تعداد کنترل هاش زیاده و کمی باعث میشه لود شدن فرم طول بکشه . البته یه چندتا حلقه هم توشه.
    با عرض پوزش یه سوال دیگه ، میشه لود شدن کنترل های فرم رو در هنگام اجرا کنترل کرد؟ یا حد اقلش شاید یه پروگرس بار برای اجرای فرم بزارم بزارم که هنگام لود شدن کنترل ها نمایش داده بشه؟ مثل backgroundworker . معمولا واسه اجرای کد میشه استفاده کرد اما برای لود شدن فرم رو نمیدونم.

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •