PDA

نسخه کامل مشاهده نسخه کامل : آموزش ويژوال بيسيك



bizenas
08-02-2005, 18:48
مفاهيم بنيادی

درVB، شئ (Object) های بسياری وجود دارد مانند فرمها، دکمه ها، برچسب ها، تصاوير و ... . همانطور که می دانيم هر شئ(Object) دارای يک سری مشخصات(Properties) می باشد. به عنوان مثال اگر يک اتومبيل را به عنوان يک شئ در نظر بگيريم، اين اتومبيل دارای مشخصاتي چون رنگ خاص، وزن خاص، طول و عرض و ارتفاع خاص، ميزان خاص مصرف بنزين و ... می باشد که در تمايز دو اتومبيل از هم، همين مشخصات هستند که به ما کمک می کنند.
درVB نيز هر Object دارای يک تعداد مشخصه (Property) می باشد. به عنوان مثال يک دکمه(Button) دارای مشخصاتی چون عرض(Width) و ارتفاع(Height) خاص و يا يک عنوان(Caption) خاص و ... می باشد.
برخی شئ(object) ها درVB، فقط در کدنويسي قابل دسترسی هستند(مانند شئADODB که در آينده با آن آشنا خواهيد شد) اما برخی ديگر علاوه بر زمان کدنويسي، در زمان طراحی (Design) نيز می توان آنها را بر روی فرمها و در جای دلخواه قرار داد و آنها را تنظيم (Set) نمود. به اشياء نوع اخير، کنترل (Control) گفته می شود.
کنترل ها خود دو گونه اند، برخی علاوه بر زمان طراحی (Design) در زمان اجرا (Run Time) نيز ديده می شوند، به اين نوع کنترل در اصطلاح(Visual Control) VCL گفته می شود که بيشترين انواع کنترلها را در بر می گيرند (مانند دکمه ها، جدولها، برچسبها و بسياری ديگر که در ادامه خواهند آمد) اما برخی ديگر از کنترل ها فقط در هنگام طراحی (Design) ديده می شوند و در هنگام اجرا تنها عمل خاصی انجام می دهند و خود ديده نمی شوند (مانند کنترلTimer)، به اين نوع کنترلها،Non-Visual Control گفته می شود. بايد توجه داشته باشيدکه کنترلهایNon-Visual، ذاتاً درRun Time ديده نمی شوند ولی ممکن است بنابر نيازی و در زمانی خاص از اجرا، خودمان برای يک يا چند VCL نيز مقدار مشخصه Visual آنها را برابرFalse قرار دهيم که مسلماً در اين حالت با وجود اينکه در آن زمان، اين کنترلها ديده نمی شوند ولی VCL بودن آنها تغييری نکرده است.
کنترل ها (اعم ازVCL ها و غير آن) معمولاً دارای تعدادی Event می باشند. Event ، رويداد يا رخدادی است که توسط کاربر و معمولاً با استفاده از ماوس يا صفحه کليد برای يک کنترل خاص روی می دهد.مثلاً يک کنترل ممکن است دارای رويداد (Event) Click باشدکه اين نوع رويداد زمانی که کاربر در هنگام اجرای برنامه (Run Time) بر روی آن کنترل خاص کليک نمايد رخ می دهد.برخی Event های معمول ديگر برای کنترلها عبارتند از: DoubleClick (زمانی که بر روی آن کنترل دابل کليک شود) ، MouseMove (زمانی که نشانگر ماوس بر روی آن کنترل قرار دارد) ، KeyPress (زمانی که کليدی از صفحه کليد زده شد) ، KeyDown (زمانی که کليدی از صفحه کليد پايين بود) ، KeyUp (زمانی که کليد زده شده برداشته شد) ، MouseDown ، MouseUp و ... که در ادامه با آنها بيشتر آشنا خواهيم شد.
برای هر Event (رويداد) می توان يک Event Procedure داشت. Event Procedure پاسخی است که يک کنترل زمانی که يک Event رخ می دهد، از خود نشان می دهد. در واقع Event قطعه برنامه ای است که زمانی که بر روی يک کنترل، يک Event رخ می دهد، به طور اتوماتيک اجرا می شود.
کنترلها معمولاً علاوه بر يک سری مشخصات (Properties) و يک سری رويداد (Event) ، دارای تعدادی نيز متد (Method) می باشد. متدها عملياتهای تعريف شده ای هستند که توسط آنها يک عمل خاص بر روی کنترلها انجام می شود.
توجه داريم که تفاوت متدها و Event Procedure ها در اين است که متدها توسط VB ، شناخته شده اند و عملشان هميشه ثابت است، اما Event Procedure ها توسط برنامه نويس و به دلخواه او تهيه می شود، بنابراين Method های مشابه بر روی کنترلهای متفاوت، پاسخ مشابهی دارد ولی ممکن است Event های مشابه بر روی کنترلهای متفاوت با توجه به Event Procedure های مخصوص هر يک، متفاوت باشد (مثلاً رويداد Click برای يک کنترل، کاری انجام دهد و برای کنترلی ديگر، کاری ديگر).
نکته ديگری که بايد به آن توجه داشت اينست که Procedure ها به طور مستقيم اجرا نمی شوند بلکه فقط زمانی که نامشان فراخوانی شود اجرا می شوند. بنابراين مثلاً در مورد Event Procedure ها بايد بدانيم که با اينکه کد مربوط به آنها نوشته شده است ولی تا وقتی که آن Event خاص (که باعث فرا خوانی Event Procedure مربوط می شود) روی ندهد، اين کدها اجرا نخواهند شد.

bizenas
08-02-2005, 18:58
چرا نظر نميدين حالا كه نظر نمي ديدن خوب سوالات تونو بپرسين :( :arrow:

bizenas
08-02-2005, 18:59
چرا نظر نميدين حالا كه نظر نمي ديدن خوب سوالات تونو بپرسين :( :arrow:

jasad
09-02-2005, 10:55
دوست عزيز٬شما تدريسش را شرو كن٬ما هم فيض ميبريم و اگرم مشكل يا نظري بود مطرح ميكنيم. :wink:

Amir_P30
09-02-2005, 22:23
راس ميگه عزيز

شما تدريس رو ادامه بده بچه هاي برنامه نويس هم ميان كم كم

iran_bride
04-03-2005, 05:50
كد ماشين حساب مهندسي را م يتوني برام بنويسي

اگه ميشه زود استادمون گفته يه ماشين حساب بايد طراحي كنيد و فقط + - * تقسيم را يادمون داده

جذر و سينوس و .........

رندوم و كليدهاي جدا خاموش و روشن بدون حارج شدن از برنامه و خلاصه مهندسي مي خواد

:cry:

Nesta
08-03-2005, 17:45
سلام
آقايون من نظر دادم که يه انجمن در مورد برنامه نويسی معرفی کنيد که واقعاً جاش در پسيورلد خالی هست در اينجا انجمن هايه غيره زرری هست ولی انجمن به اين مهمی نيست که خيلی الان مشگل دارند آقای bizenas اگه شما ميخوای آموزش vb بدی مبحث رو از يه جعی شروع کن و بگو که اين ماله کجاست و کجا به درد ميخوره چون برنامه نويسی گستر دست البته با وجود اين که الان delphi حرف اول رو ميزنه چون با امدن delphi 8 و 2005 ديگه VB جای نداره

مهمان
08-03-2005, 21:01
سلام
لطفا طرز ساخت يک فايل exe در vb را بگو که نيازي به فايل dll در کنارش نباشه
مثل زبان دلفي
در ظمن در جواب کارلوس عزيز بايد بگم که studio.net قوي تر از delphi هست
اين نکته را هم بدانيد که کار براي کساني که با مايکروسافت برنامه نويسي مي کنند بيشتر هست زيرا که دلفي کارها همش با کامپوننتهاي شرکت برلند سرزنده هستند اما بقيه با کدينگ
هميشه کد نويسي قوي تر از استفاده از کامپوننتهاي آماده مي باشد
قصد تضعيف دلفي را ندارم
دلفي هم به نوبه خودش قوي هست اما نه به اندازه زبانهاي مايکروسافت
موفق باشيد

Nesta
09-03-2005, 04:27
سلام
دوسته عزيز اين نظر شما هست ولی اگه سر به سايت تخصصی برنامه نويسن بزنيد ميبينيد که delphi يعنی برلند فقط برايه برنامه نويسی برنامه ميده ولی ميکرسافت چی تو همه چيز ميخواد بگه منم آره اينم از ويندوز که رزی 10 تا اپدت ميده هنوزم همه مينا ند ولی بايد بگم که شما اگه در جريان باشی delphi 2005 ديگه حرفی واسه ميکروسافت بقی نگزشته حالا c# يه چيزی ولی VB6 studio رو ديگه بيخيال بد هنم مگه شما component هايه جديد delphi رو نديدی که چه کار ميکنند که کلی فقط پله کرکش هست کد نويسی درنش تموم شد ديگه فقط شما با يه کليک ميتونی يه فرم انيميشن درست کنی که همه هل کنن يادتون باشه که delphi نسخيه آخرش 3 تا cd هست

مهمان
09-03-2005, 07:01
سلام
کارلوس جان اين که دوران کدنويسي تموم شده اشتباه است
بيشتر نرم افزارهاي قوي کدينگ قوي دارند
چون شما اگر بخواهي يک کنترل يا کامپوننت را به صورت سفارشي يا به قول معروف customize در بياري بايد کد بنويسي
در دلفي شما مجبوري از همان کامپوننت استفاد کني و محدود به محيط دلفي هستي
اما در دات نت شما مي تواني کامپوننتهاي قوي توليد کني
من خودم بيشتر با #C کار مي کنم
اما به هر حال شما هم که با دلفي کار مي کنيد نظري داريد
در ضمن تعداد cd ملاک بر قدرت و کيفيت نيست عزيز
موفق باشيد :wink:

abd
08-11-2005, 10:55
دوست عزيز سلام
مدتي است که برنامه نويسي basic 6 را شروع کرده ام اما من يک مشکلي که دارم دنبال کتابي ميگردم که به صورت manual ليست دستورهاي بيسيک را به همراه توضيح مختصر نحوه استفاده و نوشتاري دستور مورد نظر داشته باشد.
سپاسگزارم