سلام
امروز می خوام راجع به یک برنامه خیلی عالی که این حقیر نوشتمش کمی توضیح بدم.
البته برادرم نسخه آزمایشی اون رو یکی دو ماه پیش تو بخش تبلیغات برای فروش گذاشته بود که مورد لطف دوستان قرار گرفت و پاکش کردند. و حالا از اونجایی که کد های نسخه اصلی رو در غالب یک برنامه کامل تر از من خریدند (البته نه حق انتشار کد رو), بد ندیدم که برای دوستان ایرانویج ی مطرح کنم چون نکات و مسائل نوی زیادی درش هست.
می تونید سورس کد رو از همین سایت و آدرس زیر دانلود کنید نظر یادتون نره.
http://www.iranvig.com/4529.html
اما لوگو چی هست که لازمه نمایش داده بشه؟
لوگو به یک نقاشی (طرح) گفته می شه که نشون دهنده یک پروژه, طرح و یا یک برنامست و اغلب شما در ابتدای اجرای برنامه های بزرگ یک کادری در وسط صفحه می بینید که در اون کادر نام برنامه, نسخه و به ویژه شرکت, گروه یا عوامل پیدید آورنده اون محصول, به چشم می خوره (یک جور پوستر کوچک دیجیتالی).
حالا شما که چند ماه زحمت ساخت برنامه ای رو کشیدید بهتره یک همچین لوگویی رو برای برنامه طراحی کنید تا جهت نگاه به برنامه شما, مثل برنامه ها و کار های حرفه ای بشه.
به عنوان مثال خود من یک برنامه حسابداری نوشتم (که البته سفارش گرفته بودم) و در ابتدای اجرای اون برنامه لوگوی زیر به نمایش در میومد.
دانلود
اسم اون برنامه ساحل بود! در اختصار SOf .و طرح بالا نمونه لوگو هست که خود اصلش بسیار بزرگتر و با کیفیت تره.
اما از اونجایی که اضافه کردن و پرداختن به کد در غالب یک کار گرافیکی درون یک برنامه (یا پروژه) غیر گرافیکی نظیر یک سیستم حساب داری یا کنترل تولید و یا انبار بسیار هزینه بر هست (اینجا هزینه منظور هزینه مالی به طور مستقیم نیست, منظور کد نویسی مضاعف به همراه صرف وقت بیشتر برای برنامه, همین طور کار های گرافیکی به دنبال خودش منابع حافظه بیشتری رو مشغول می کنه) که این در نهایت می تونه به پروژه شما صدمه بزنه. چرا که پرداختن به جنبه تزئینی کار و صرف چنین امکاناتی فقط برای نمایش یک لوگو که کاربر اون رو شاید روزی 2 ثانیه هم مشاهده نکنه, اصلا عقلانی نیست.
از این جهت این برنامه می تونه کمک خیلی بزرگی برای شما باشه چطور؟
-شما وقت و انرژی خودتون رو می زارید برای برنامتون
-به گرافیستتون سفارش طراحی یک لوگو مناسب با برنامهتون رو می دید (اگر هم خودتون طراحی کنید ایرادی نداره!)
-در نهایت که برنامه و فایل لوگو آماده شدند شما تنها کاری که باید انجام بدید اینه که به Mask Desktop بگید لوگو رو اول اجرای برنامتون نمایش بده.
برای اینکه بدونید چه لوگوهایی برای برنامتون مناسب تره توضیحات چگونگی استفاده از برنامه Mask Desktop (به اختصار دیگه می گم MD) رو در ادامه مطالعه کنید.
چطور از Mask Desktop استفاده کنید.
کد ها رو کامپایل کنید تا فایل اجرایی برنامه در اختبارتون باشه.
حالا با اجرای فایل اجرایی برنامه لوگوی خود برنامه MD به نمایش در میاد. خوب نگاه کنید که یک لوگو باید چنین مشخصه هایی داشته باشه.
برای اینکه برنامه MD بتونه لوگو یا فایل تصویری شما رو به نمایش در بیاره سه کار می تونید انجام بدید.
1-فایل اجرایی برنامه رو همراه با نام و مسیر فایل (های) تصویری خودتون اجرا کنید به عنوان مثال:
MaskDesk.exe "C:\Test.Png"
2-فایل یا فایل های تصویری خودتون رو در پنجره اکسپلورر انتخاب کنید و اون ها رو بکشید و بندازید داخل فایل اجرایی برنامه!
3- فایل یا فایل های تصویری خودتون رو در پنجره اکسپلورر انتخاب کنید و اون ها رو بکشید و بندازید داخل یکی از فرم هایی که برنامه MD در حال نمایش اون هاست.
نکته: هر برنامه نویسی می دونه که روش های یک و دو یکی هستند!
اما مسئله برنامه نمویسی: یعنی اینکه برنامه MD چه روشی برای انجام این کار داره معرفی می کنم اما چگونگیش رو خودتون از طریق بررسی کد متوجه می شید و اگر سردرگم شدید می تونید از خود من در همین بحث سوال کنید.
# چطور میشه یک یا چند فایل (آدرس فایل) رو در مسیر ورودی به فایل اجرایی (Command$) شناسایی کرد. توجه کنید که مسئله مهم اینجا خود فرمان Command$ در وی بی نیست بلکه, اینکه چطور MD می تونه چند مسیر فایل رو حتی از داخل یک رشته بی معنی ورودی شناسایی کنه. کد رو مطالعه کنید ماژول mMain زیر برنامه main
# چطور میشه از خاصیت DragDrop درون برنامه ها (منظور ارتباط منابع خارجی با خود برنامه ما از طریق OleDragMode اشیاء است) استفاده کرد. به برنامه MD فرم FrmLogo خصوصیت OleDragMode و رویداد Form_OLEDragDrop مراجعه کنید.
شما با MD علاوه بر فرمت های bmp,Gif,Jpg,Wmf,Emf که وی بی 6 ازشون پشتیبانی می کنه می تونید از فرمت های PNG,Tif و همه فرمت هایی کهGDIP ازشون حمایت می کنه استفاده کنید چون موتور نمایش تصاویر در MD توابع GDI+ هست که به جای خودش مفصل براتون توضیح می دم که چطور این کار انجام می شه.
خوب حالا دونستید که چطور فایل تصویری خودتون رو با MD نمایش بدید. حالا اگر روی هر کدوم از تصاویر دابل کلیک کنید می تونید اون تصویر رو ببیندید.
برای بستن فایل اجرایی که ممکنه در حال نمایش چند تصویر باشه, کافیه روی یکی از فرم ها راست کلیک کنید و از منوی ظاهر شده گزینه آخر Exit رو انتخاب کنید. راه ساده تر استفاده از Hotkry هست:Ctrl+X یا Ctrl+End
اما با فرض اینکه شما تعداد زیادی فرم و برنامه MD در حال اجرا دارید با سوئیچ CloseAll به ترتیب زیر می تونید تمام پنجره ها همین طور تمام برنامه های MD در حال اجرا رو ببندید.
MaskDesk.exe CloseAll
نکته: شما با انتخاب گزینه Exit از منوی راست کلیک فقط فایل اجرایی جاری رو می بندید اما اگر MD رو با فرمان CloseAll اجرا کنید MD تازه اجرا شده تمام MD های در حال اجرا رو می بنده (همین طور خودش رو)
#چطورMD با فرمان CloseAll می تونه بقیه MD های در حال اجرا رو ببنده به ترتیب زیره:
با نمایش هر تصویر )فرم) MD دستگیره هندل اون پنجررو در رجیستری ثبت می کنه و در موقع بستن اون فرم کد هندل از رجیستری پاک میشه. به هنگام اجرای CloseAll برنامه تمام پنجره های باز (ثبت شده) را می بنده. به کد توجه کنید ماژول mMain زیر برنامه های Save_hWnd CloseAllLogos, LoadLogo, و فرم FrmLogo زیر برنامه Form_Unload
دیگه دیروقته من فعلا سریع امکانات برنامرو لیست می کنم اگر علاقهمند بودید در مورد چون و چرای انجام اون ها براتون مفصل توضیح می دم.
-تنظیم شفافیت یا به قولی Transparency تصاویر (در اصلاح GDI+ بهش می گند ConstantAlpha)
-تنظیم و تغییر سایز تصویر
-امکان ثابت یا قابل جابجایی کردن هر یک از تصاویر
-سیستم پیچیده و پیشرفته سویچینگ با استفاده از منطق اپریتور
-امکان ایجاد فایل اجرایی مجزاء برای هر تصویر
-امکان ایجاد یک فایل اجرایی مجزاء برای مجموعه ای از تصاویر
-امکان ذخیره تنظیمات اعمالی شما در هر یک از فایل های اجرایی مجزایی که می سازید
و کلی کارکرد و امکان دیگه که توضیح خواهم داد بعدا...
این هم هدیه من به شما یک فایل PNG زیبا که خودم طراحی کردم با MD اجرا کنید کیفش رو ببرید.
دانلود