 |
| کاربر جدید |
 |
تاريخ عضويت: يکشنبه 2 اسفند 1388, 5:54 pm پست ها : 8 محل سکونت: شیراز
|
|
سلام
دنبال يك موضوع براي نوشتن بودم كه كنترل Common Dialog يادم افتاد. اين كنترل يكي از پركاربردترين كنترلها در برنامهنويسي ويندوز است. كار اين كنترل، همانطور كه از اسمش معلوم است، نمايش دادن پنجرههاي معمول در ويندوز است. شايد شما تا حالا برايتان پيش آمده باشد كه بخواهيد در يك برنامه دستور Open قرار دهيد به طوري كه اجراي آن، پنجرهاي باز شود و كاربر بتواند فايل مورد نظر را انتخاب كند.
خب، لازم نيست كه شما يك فرم طراحي كنيد، بلكه به راحتي ميتوانيد از اين كنترل استفاده كنيد.
حالا يك پروژه vb باز كنيد. در جعبه ابزار راست كليك كرده و Components… را برگزينيد. مورد Microsoft Common Dialog Control را تيك بزنيد و OK را كليك كنيد. حالا يك CommonDialog و يك دكمه روي فرم بگذارید. ويژگي CancelError مربوط به CommonDialog را True كنيد. در رویداد كليك دکمه، كد زیر را بنویسید:
CommonDialog1.Filter = "All Executable files|*.exe|All files|*.*"
CommonDialog1.ShowOpen
Shell CommonDialog1.FileName
حالا اگر برنامه را اجرا كنيد و Open را بزنيد، پنجره Open ویندوز را خواهید دید.
توضيح: ويژگي Filter همانطور كه از نامش برميآيد، براي فیلتر کردن فايلهاي قابل رؤیت به كار ميرود. در بالا ما دو انتخاب به كاربر داديم كه اولي فقط فايلهاي اجرايی را نشان ميدهد و دومي تمام فايلها را.
متد ShowOpen هم كه پنجره Open را نشان ميدهد.
تابع shell هم كه از توابع داخلي ويژوال بيسيك است، براي اجراي يك برنامه به كار ميرود.
حالا يك دكمه ديگر روي فرم بگذاريد. در كليك اين دكمه بنويسيد:
CommonDialog1.ShowColor
Me.BackColor = CommonDialog1.Color
برنامه را اجرا كنيد و نتيجه را ببينيد.
حالا اگر دقت كرده باشيد، كدهاي بالا يك اشكال دارند و آن هم اين است كه هنگام زدن Cancel، با error مواجه ميشويم. براي رفع اين مشكل كد اول را به شكل زير تغيير دهيد:
On Error Resume Next
CommonDialog1.Filter = "All Executable files|*.exe|All files|*.*"
CommonDialog1.ShowOpen
If Err Then Exit Sub
Shell CommonDialog1.FileName
ميبينيد كه دو خط كد اضافه كرديم. در خط اول به كامپايلر ميگوييم كه هنگام به وجود آمدن error، اجراي برنامه را قطع نكند و خط بعدي را اجرا كند. بعد از دستور ShowOpen هم بررسي ميكنيم كه اگر error به وجود آمده باشد (يعني اگر دكمه Cancel زده شده باشد) اجراي دستورات را متوقف كند.
حالا كد دوم را هم خودتان اصلاح كنيد.
حالا ويژگيها و متدها و ايونتهاي مهم اين كنترل را توضيح ميدهم.
اول از همه خيالتان را راحت كنم كه اين كنترل، هيچ رويدادي ندارد.
ويژگي CancelError: در صورت فعال بودن، هنگام فشرده شدن Cancel، يك error به وجود ميآورد.
ويژگي DialogTitle: نام پنجره محاوره را مشخص ميكند. ميتوانيد به دلخواه خود آن را تغيير دهيد.
ويژگي FileName: آدرس كامل آخرين فايل انتخاب شده را برميگرداند.
ويژگي FileTitle: نام آخرين فايل انتخاب شده را برميگرداند.
ويژگي Filter: قبلاً توضيح داده شد.
متد ShowColor: پنجره انتخاب رنگ ويندوز را نشان ميدهد.
متد ShowFont: پنجره انتخاب فونت ويندوز را نشان ميدهد.
متد ShowHelp: در صورتي كه براي اين كنترل فايل Helpي مشخص كرده باشد، آن را نشان ميدهد.
متد ShowOpen: پنجره Open ويندوز را نشان ميدهد.
متد ShowPrinter: پنجره انتخاب چاپگر ويندوز را نشان ميدهد.
متد ShowSave: پنجره Save as ويندوز را نشان ميدهد.
اگر سؤالي در مورد اين كنترل داشتيد، در نظرات بگوييد. البته از همين حالا بگويم كه من كار كردن با Printer انتخاب شده توسط پنجره ShowPrinter را بلد نيستم؛ اگر سؤالتان در اين مورد بود، نپرسيد. البته اگر خودتان بلد هستيد، لطف كنيد و به من هم بگوييد.
_________________
|
|