Mojgan110
سه شنبه 17 مرداد 1385, 11:01 صبح
اوووه ! نمیدونم چجوری مشکل را بگم !! خیلی یه جوریه !
یک فرم دارم ! که یک تایمر داخلش گذاشتم . ( کامپوننت TTimer ) و داخل ایونت مربوط به این تایمر ، یک دستور کوتاه و کوچک ُSQL را در فواصل زمانی مثلا یک دهم ثانیه ای اجرا میکنم.
خب ...
حالا ! یک Thread جدید هم ساخته ام و از داخل این Thread ، اون تایمره را فعال میکنم و دستور نمایش فرمی که گفتم همین تایمره هم توشه را هم میدهم .
frmWait.Timer1.Enabled:= True;
frmWait.Show;
خب ...
برنامه اصلی ، خودش باید که یک کوئری طولانی که 6-7 ثانیه اجراش طول میکشه را اجرا کنه.
قبل از اینکه این کوئری طولانیه را شروع به اجرا کنم ، اون ترد جدیده را هم اجرا میکنم . ( که در واقع فرم مربوطه اش را نشون بده و تایمرش هم شروع کنه به اجرای اون دستور SQL کوچیکه) . و خب حالا کوئری طولانیه را هم اجرا میکنم و ...
ولی بدبختی اینه که با وجود اینکه اون فرمه را نشون میده ، ولی فرمش قفل میکنه و تا وقتی که اجرای اون دستور کوئری بزرگه تموم نشده باشه ، تکون نمیخوره و مثلا اگر یک Labelهم روش باشه ،اون را هم نشون نمیده .
با این اوصاف ! نظری دارید ؟ http://my.blackmice.com/images/bs/sad.gif
ضمنا من درست درباره Thread اطلاع و اینا ندارم ( فکر کنم سه چهار ترم دیگه ، توی سیستم عامل درسش میدند گویا ). این داستانها را گفتم که شاید مشکل در نحوه استفاده از Thread م باشه و شما نظر کارشناسیتون را بدین
یک فرم دارم ! که یک تایمر داخلش گذاشتم . ( کامپوننت TTimer ) و داخل ایونت مربوط به این تایمر ، یک دستور کوتاه و کوچک ُSQL را در فواصل زمانی مثلا یک دهم ثانیه ای اجرا میکنم.
خب ...
حالا ! یک Thread جدید هم ساخته ام و از داخل این Thread ، اون تایمره را فعال میکنم و دستور نمایش فرمی که گفتم همین تایمره هم توشه را هم میدهم .
frmWait.Timer1.Enabled:= True;
frmWait.Show;
خب ...
برنامه اصلی ، خودش باید که یک کوئری طولانی که 6-7 ثانیه اجراش طول میکشه را اجرا کنه.
قبل از اینکه این کوئری طولانیه را شروع به اجرا کنم ، اون ترد جدیده را هم اجرا میکنم . ( که در واقع فرم مربوطه اش را نشون بده و تایمرش هم شروع کنه به اجرای اون دستور SQL کوچیکه) . و خب حالا کوئری طولانیه را هم اجرا میکنم و ...
ولی بدبختی اینه که با وجود اینکه اون فرمه را نشون میده ، ولی فرمش قفل میکنه و تا وقتی که اجرای اون دستور کوئری بزرگه تموم نشده باشه ، تکون نمیخوره و مثلا اگر یک Labelهم روش باشه ،اون را هم نشون نمیده .
با این اوصاف ! نظری دارید ؟ http://my.blackmice.com/images/bs/sad.gif
ضمنا من درست درباره Thread اطلاع و اینا ندارم ( فکر کنم سه چهار ترم دیگه ، توی سیستم عامل درسش میدند گویا ). این داستانها را گفتم که شاید مشکل در نحوه استفاده از Thread م باشه و شما نظر کارشناسیتون را بدین