دسته
لينك هاي دسترسي سريع
مطالب من در ثبت مطالب روزانه
آرشیو
آمار وبلاگ
تعداد بازدید : 1156916
تعداد نوشته ها : 1368
تعداد نظرات : 348
Rss
طراح قالب
مهدي يوسفي
 اپراتور

این اپراتور برای تشخیص نوع کنترل به کار می رود.روش استفاده از ان به شکل زیر است

TypeOf ControlName Is ControlType

مثال:کنترلی از نوع فایل بوکس رابه تایع زیر می فرستیم یرای تعیین عضو انتخاب شده

Private Function GetSelectItem(LST as Contol) as String
if TypeOf lst is listbox then
GetselectItem=Lst.text:Exit Function
else :GetselectItem=Lst.FileName:Exit Sub
End if

در خط یک تابع با آرگومان یک لیست از نوع کنترل تعریف می شود خروجی تایپ آف به صورت یک منو مانند تعریف متغییر هنگام کد نویسی ظاهر می شود که شما می توانید نو ع کنترل خود را از داخل آن انتخاب کنید.توجه کنید بین تایپ و آف نباید فاصله بیفتد واگر نه با خطای کامپایل مواجه می شوید.

DoEvents اپراتور

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

For i=0 to list1.listCount -1
if list1.list(i)<>"" then call Copy(list1.list(i),App.path+"\")
DoEvents
Next

در خط اول حلقه ای از صفر تا تعداد اعناصر موجود در لیست اغازمی شودو در هر درو فایل درون لیست در صورت وجود کپی می شود .اگر فایل های مازیاد باشد DoEventsو اپراتور را ننویسیم حتمآ برنامه ما هنک می کند.باید یاد آور شد استفاده نابجا و بیش از اندازه این اپراتور موجب کاهش سرعت برنامه می شود.ِالبته

استفاده می کنندSleepبه نام APIباعث کارکرد زیاد وشدید سی پی یو می شود وبرخی ترجیح می دهند از آن استفاده نکنند ویه جای ان از یک

فرق می کند. اسلیپ باعث میشود سی پی یو تمام کار های در حال اجرا را رها کند وبه مدت زمانی که جلویDoEventsباید گفت کارکرد اسلیپ به طور کلی با

آن نوشته می شود به استراحت بپردازد.ِ

sleep با توجه به زمانی که براش تعیین میکنی در وسط کار برنامه مکث ایجاد میکنه و در آن زمان هیچ خطی از کد برنامه اجرا نمیشه و همان طور که از اسم تابع .مشخصه برنامه در آن زمان به خواب میره
اسلیپ زمانی که با محیط خارج از برنامه در ارتباطی خیلی مفیده. چون معمولا وقتی دستوری در وی بی مثل اجرای فلان فایل مدتی طول می کشد و تو این مدت دستورات بعدی سریع اجرا می شوند که ممکن است نتیجه اش به اجای فایل بستگی داشته با شه.اسلیپ باعث میشه به ویندوز فرصت بدی سایر دستورات فرستاده شده به خارج برنامه رو اجرا کنه. البته گاهی اوقات هم نمیدونیم چند ثانیه مکث کنیم و ممکنه مجبور شیم برای احتیاط زمان زیادی مکث کنیم که سرعت برنامه میاد پایین پس تا می تونیم از دستورات خود وی بی استفاده کنیم تا بر نامه های خارجی.ِ

Shell دستور

توسط این دستور می تونید فایلی را در وی بی اجرا کنید .آدرسی که جلوی این دستور نوشته می شه اجرا میشه .شکل این دستور به این صورت است:ِ

Shell ProgramPath,RunModel

در آرگومان اول مسیر فایل نوشته می شود ودر آرگومان دوم مدلی که برنامه باید اجرا شود.در این ارگومان از آرگومان های زیر استفاده می گردد

vbHide=0 vbMaximizedFocus=1 vbMinimizedFocus=2 vbMinimizedNoFocus=3 vbNormalFocus=4 vbNormalNoFocus=5

در مدل صفر برنامه به صورت پنهان ظاهر می شود.برای مواقعی که می خواهیم عمل اجرا را از دید کاربر پنهان کنیم .در مدل 2 برنامه اجرا می شود به صورت کمینه(روی منوی استارت-مینیمایز شده)وفاکس هم روی ان می رود یعنی این که بعد از اجرا هی زرد و آبی می شود تا کار بر روی آن کلیک کند.مدل 3برنامه به

صورت ینیمایز -کمینه اجرا می شود زرد وآبی نمی شود (معمولی-فاکس رویش نمی رود).مدل 1برنامه به صورت تمام صفحه اجرا شده فاکس هم روی آن می رود(زرد و ابی می شود).در مدل 4برنامه با اندازه پیش فرض اجرا می شودوفاکس را هم می گیرد.درمدل 5برنامه با اندازه معمولی اجرا شده و فاکس نمی گیرد

کار برد مهم دیگر شل اجرا فایل های معمولی با یک برنامه اجرایی است مثل اجرای یک متن در نت پد.برای این کار نام فایل را بایک فاصله از نام فایل می نویسیم

Shell "NotPath.Exe"+" C:\Text1.txt" ,4

پنج شنبه بیست و ششم 10 1387
X