PDA

View Full Version : سوال: مشکل مربوط به کار کردن با IrisSkin2.dll میشه



reza_edu
پنج شنبه 06 آبان 1389, 21:42 عصر
سلام به همه مهندسان
دو سوال داشتم که اگه بنده رو راهنمائی کنید ممنون میشم من تو برنامه ام از سه فرم استفاده کردم که فرم اول لاگین هست و فرم دوم مربوط به تنظیمات و فرم سوم برنامه اصلی هست که برای راحتی کار و آسون بودن برنامه تمامی صفحه حارا داخل TABها جاسازی کردم برنامه هم باید با فرم اول که لاگین هست لود بشه بالا بیاد من درفرم برنامه برای زیبای از اسکین IrisSkin2.dll استفاده کردم که الحق واقعا قشنگن (73تا هستن ترکوندم یارو حال میکنه) ولی به دو مشکل برخوردم به شرح زیر:
.من بالای صفه هر دو فرمم مطالب زیر رو مینویسم



Imports Sunisoft.IrisSkin.SkinEngine

Imports System.IO

و بعد از کلاس فرم


Dim I_skin As Integer
Dim thems As New Sunisoft.IrisSkin.SkinEngine




و باتوجه به رویداد های برنامه از متغیر هام استفاده میکنم


من اول فرم سوم را جداگانه طراحی کردم وفرم اول ودوم را تو یه پرژه دیگه حالا که هردوی آنها را داخل یه پرژه قراردادم منظور از پرژه (solution Explorer) هست کنترل های که برای تعقیر تم فرم تو فرم سوم قرار دادم روی فرم اجا نمیشن در حالیکه وقتی خود فرم سوم فرم اصلی برنامه قرار میگیره این تعقیرات عمل میکنن ! البته اینم بگو که وقتی تو فرم سوم من تعقیر ظاهر فرم رو کلیک میکنم همون لحظه تعقیر ظاهر نمیشه اما وقتی فرم رو میبندم و دوباره باز میکنم میبینمکه تابع مربوطه فراخوانیشده و عدد تم رو تعقیر داده ولی همون لحظه نمایش داده نمیشه امیدوارم که توضیح قابل فهم بوده باشه ممنون میشم راهنمائی کنید البته بگم من یه مشکلیم دارم خواستم تا از یه ماژول تو برنامه استفاده کنم ولی چون بلد نبودم متغیرش رو چه جوری فراخونی کنم پشیمون شدم تو این مورد اگه راهنمای کنید ممنون میشم اصلا ممکنه به این کار مشکلم حل بشه!!!!







2.تو فرم سومم یه TABpageدارم که مجبور شدم تا خاصیت Me.TabPage1.AutoScroll=Trueرو فعال کنم اما تم همه قسمت ها عوض میشه الا قسمتی که تو شکل زیر میبینید
http://up.iranblog.com/Files73/3b86c474826e4becb855.bmp


دورش با خط سبز خط کشیدم با فلش قرمز هم نشون دادم چیکار کنم دوستان بشه یا نشه ازش استفاده میکنم ولی اگه میشود خیلی حال میداد اینم عوض میشد راهنمائی میکنید !

این مشکل به تم ربط نداره یه سوال که ازدوستان میپرسم راهنمائیم کنن آقا من برای ارتباط با دیتابیس یا کار با فایل یا هرچیزی که نیاز به Importsکردن تو برنامه داشته باشه بالای صفحه هر فرمم اونو Importsمیکنم آیا روشی هست که یه بار یه جا مثل ماژول ها ما این Imports رو انجام بدیمدیگه نیاز نداشته باشیم همش بالای فرممون استفاده کنیم به نظر خودم که این روشمن غلطه شاید دوستان بگن درسته ولی دلم با این روش راه نمیاد فکر میکنم کارم اشتباه هست اگه ممکنه تو این موردم منو راهنمائی کنید ممنون میشم.

ali_najari
جمعه 07 آبان 1389, 11:30 صبح
دوست عزیز برای مشکل اول بگم که زمانی که 1 تم رو برای فرم اول انتخاب کنی برای تمامی فرم ها اون تم اجرا میشود و نمیتونید برای هر یک از فرم ها یک اسکین قرار بدید
در رابطه به اینکه باید حتما بسته بشه تا اسکین اعمال بشه من تاحالا چنین مشکلی نداشتم و هیچ وقتم تا حالا Import نکردم کللاس اسکین رو فقط Drag&Drop کردم کامپونتش رو روی برنامه ام و زمانی هم که اسکین رو عوض میکنم سریع عوض میشه

راجع ب Scroll هم باید بگم که تاحالا توجه نکردم ولی فکر کنم به همین سیستم باقی میمونه

reza_edu
جمعه 07 آبان 1389, 12:09 عصر
آقای ali_najari (http://www.barnamenevis.org/forum/member.php?u=47495) ممنون ئلی خوب پس چی کار کنم من تعقیر فرم رو باید فقط تو فرم سومم اعمال کنم :عصبانی++: درمورد ماژول چی نمیشه تو فرم اولم متغیر رو تعریف کنم بعد تو فرم سومم از همون استفاده کنم ممنون میشم پاسخ بدید (با راه حل):گریه:

ali_najari
جمعه 07 آبان 1389, 12:35 عصر
یه مثال براتون میزارم

alimanam
جمعه 07 آبان 1389, 14:43 عصر
با سلام

واستون یه نمونه کد ساده آماده کردم . موفق باشید .

reza_edu
جمعه 07 آبان 1389, 15:04 عصر
سلام استاد عزیز جناب آقای alimanam (http://www.barnamenevis.org/forum/member.php?u=43498)
من مثال شمارو دیدم اما مثل اینکه من منظورم رو بد گفتم شما تو همون برنامه تو فرم سومت یه باتن درست کن و کد زیر رو قرار بده


SkinEngine1.SkinFile = "skin\Skin (16).ssk"
Form3.ShowDialog()
حالا برنامه رو اجرا کن دیدی نمیشه پیغام خطا میده یه جوری یا باید متغیر رو گلوبال تعریف کنی یا اینکه تو همون فرم دوباره تعریف کنی اگه دوباره تعریف کنی هم هیچ فایده ای نداره:متفکر:

alimanam
جمعه 07 آبان 1389, 15:21 عصر
دوست عزیز شما چرا اصلاً از این متد دارین استفاده میکنین ؟!!!!

به نکات زیر توجه کن :

وقتی داری از این کنترل برای زیبایی برنامه ات استفاده میکنی فقط از یه شی ( Object ) اون استفاده کن و روی فرم ابتدایی برنامه ات Drag & Drop کن .

در هر کجا که خواستی تم برنامه رو عوض کنی با استفاده از کد زیر تم برنامه رو عوض کن : ( فرض بر این گذاشته شده که Form1 فرم اصلی برنامه است و دارای یه کنترل IrisSkin هست )

Form1.SkinEngine1.SkinFile = "skin\Skin (11).ssk"

یا

Global.Sample.Form1.SkinEngine1.SkinFile = "skin\Skin (11).ssk"

که در اینجا Sample همان نام پروژه نمونه است که ضمیمه شده .

حالا میبینی که با ست کردن منبع تم ( SkinFile ) به کنترل مذکور که درون اون فرم اصلی ما ( Form1 ) تم برنامه هم عوض میشه .

موفق باشید .

reza_edu
جمعه 07 آبان 1389, 17:16 عصر
آقا ممنون خدا خیرت بده شده:خجالت: این تیکه کد رو بلد نبودم:خجالت: تازه کارم شما ببخش اگه میشه تو قسمت دوم هم کمکم کنید:لبخند:

alimanam
جمعه 07 آبان 1389, 17:29 عصر
آقا ممنون خدا خیرت بده شده:خجالت: این تیکه کد رو بلد نبودم:خجالت: تازه کارم شما ببخش اگه میشه تو قسمت دوم هم کمکم کنید:لبخند:

با سلام

دوست عزیز سوال 2 شما به این سادگی ها حل شدنی نیست چون کنترل ظاهر برنامه در اختیار کنترل IrisSkin هست و اسکین هایی هم که داره حساسیتی بر Scroll کنترل TabPage نشون نمیده . راه کار اینه که بیای خودت یه سکین بسازی فکر کنم خودش یه برنامه واسه طراحی اسکین برای این کنترل داشته باشه ( Skin Builder ) . موفق باشید .

Alghoochi
جمعه 07 آبان 1389, 19:56 عصر
اسکین ها ظاهر کل فرم رو تغییر می دن. درصورتی که تصویری برای اون بخش تعریف شده باشه ظاهر اون کنترل تغییر می کنه. در صورت نبودن عکس حالت پیش فرض ویندوز نمایش داده میشه.

reza_edu
جمعه 07 آبان 1389, 21:02 عصر
سلام جناب آقای Alghoochi (http://www.barnamenevis.org/forum/member.php?u=105791)
خوب نمیشه خودم بهش اضافه کنم ! آخه اول و آخر مجبورم که بزارم باشه چه ظاهر فرم بریخت بشه چه نشه ولی بیشتر جنبه آموزشیش برام مهمه حالا تو این پرژه زیر سیبیلی رد کردیم بعدی رو چیکار کنم؟

suncity
جمعه 21 مهر 1391, 21:45 عصر
با سلام.
من از این ابزار استفاده کرده ام ولی بعضی مواقع به صورت خودکار و بی دلیل در فرم غیر فعال می شوند.
من داخل فرم اصلی اون رو اجرا کرده ام ولی داخل فرم های دیگه بگیر نگیر داره. یه دم هست یه دم نیست!
چیکارش کنم؟