PDA

View Full Version : اجرای دو کد بطور همزمان



nahid1388
پنج شنبه 07 آبان 1388, 22:14 عصر
سلام دوستان یه کد دارم به شکل زیر هست:


private void HideLeftPanel()
{
AnimateWindow(panel1.Handle, 1000, (AW_SLIDE ^ AW_HOR_NEGATIVE ^ AW_HIDE));
}
private void HideRightPanel()
{
AnimateWindow(panel2.Handle, 1000, (AW_SLIDE ^ AW_HOR_POSITIVE ^ AW_HIDE));
}

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

esmartiz_red
پنج شنبه 07 آبان 1388, 22:19 عصر
اجرا نشدنش که به خاطر اینه که اول متدی اجرا می شه که ابتدا گذاشتین یعنی هر کدوم زودتر فراخوانی شدن با استفاده از تردها هم که بازم می شه همین اون تردی که زودتر فراخوانی شده زودتر اجرا می شه
الان من چیزه خاصی به نظرم نم رسه بررسی می کنم خبر میدم البته می شه از دو تا timer استفاده کرد که interval هر دو مثل هم باشه و هر کدوم یکی از تردهارو فراخوانی کنه البته فکر نمی کنم خیلی درست باشه و حتما راه های خیلی بهتری هم هست که استادان گرامی کمک می کنن

nahid1388
پنج شنبه 07 آبان 1388, 23:08 عصر
سلام:


می شه از دو تا timer استفاده کرد که interval هر دو مثل هم باشه و هر کدوم یکی از تردهارو فراخوانی کنه
اینکار رو کردم نشد
یک راه دیگه پیشنهاد کنید!!!

MohsenTi
جمعه 08 آبان 1388, 00:39 صبح
AnimateWindow(panel1.Handle, 1000, (AW_SLIDE ^ AW_HOR_NEGATIVE ^ AW_HIDE) | (AW_SLIDE ^ AW_HOR_POSITIVE ^ AW_HIDE) );
امتحان نکردم ولی تو c++ از این روش استفاده میشه

nahid1388
جمعه 08 آبان 1388, 02:32 صبح
AnimateWindow(panel1.Handle, 1000, (AW_SLIDE ^ AW_HOR_NEGATIVE ^ AW_HIDE) | (AW_SLIDE ^ AW_HOR_POSITIVE ^ AW_HIDE) );
امتحان نکردم ولی تو C++‎ از این روش استفاده میشه
مرسی اما اینم نشد
بازم هم نظر بدین تو رو خدا ضروریه:عصبانی++::گریه::عصبان ++:

اَرژنگ
جمعه 08 آبان 1388, 03:47 صبح
مرسی اما اینم نشد
بازم هم نظر بدین تو رو خدا ضروریه:عصبانی++::گریه::عصبان ++:
شما را به خدا یک پروژه کوچک بفستید درستش کنیم. از نظر دادن راحتره:

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



privatevoid HideBothPanels()
}
AnimateWindow(panel1.Handle, 1000, (AW_SLIDE ^ AW_HOR_NEGATIVE ^ AW_HIDE));

(){AnimateWindow(panel2.Handle, 1000, (AW_SLIDE ^ AW_HOR_POSITIVE ^ AW_HIDE));}

esmartiz_red
جمعه 08 آبان 1388, 12:38 عصر
دوست عزیر به نظرو بهتره که اندازه حرکت کنترل های مورد نظر رو کمتر بذار بعد بر اساس یه شرط جندین با متد مورد نظرت اجرا بشه

اَرژنگ
یک شنبه 10 آبان 1388, 12:25 عصر
مرسی اما اینم نشد
بازم هم نظر بدین تو رو خدا ضروریه:عصبانی++::گریه::عصبان ++:
لطفاً اگر جوابی درست بود به ما هم بگید که ما هم یک چیزی یاد بگیریم
پس بالاخره این کار کرد یا نه؟

esmartiz_red
پنج شنبه 14 آبان 1388, 01:22 صبح
دوست عزیز شما می تونید از توابع یکطرفه استفاده کنید روش مناسبی است از روی فایل نمونه عمل کنید

اَرژنگ
پنج شنبه 14 آبان 1388, 03:51 صبح
دوست عزیز شما می تونید از توابع یکطرفه استفاده کنید روش مناسبی است از روی فایل نمونه عمل کنید

اگر ممکن است این نمونه را کامل کنید که مثلاً مقدار نشان داده شده در یک لیبل را عوض کنه یا اینکه یک کنترل را یکمی جاش را عوض کند.