تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




صفحه 3 از 4 اولاول 1234 آخرآخر
نمايش نتايج 21 به 30 از 40

نام تاپيک: چه طور یه عکس رو نمایش بدم ؟

  1. #21
    آخر فروم باز rezapassword's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    سرزمین اهورایی
    پست ها
    1,678

    پيش فرض

    سلام بر شما h2 عزیز
    اقا ممنون که برنامه نمونه گذاشتی
    اینو بگم که برنامه شما اصلا باز نمیشه چون یه فایلش رو نیست ( فایل اصل )
    فقط تونستم بیلد کردش رو بینم
    که فهمیدم منظور من رو متوجه نشدید
    من نمیخوام به این صورت یه عکس رو نشون بدم
    می خوام وقتی موس رفت رو یه دکمه این عکس ( عکس مروط به اون دکمه نشون داده بشه ) البته به صورت بالا یه چیزی مثل tootip ولی از جنس عکس نه نوشته

  2. #22
    حـــــرفـه ای Ultimator's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    NetFrameWork.
    پست ها
    3,239

    پيش فرض

    سلام اقای رضای عزيز
    من تو اين پست ها برنامه ی نمونه اي از اقای h2 نديدم اگه منظورتون ان برنامه ايه که من گذاشتم با عرض معذرت هدفم جواب دادن به سوال شما نبود ، بلکه برای تکميل سوال خودم بود که اونم فقط کد هاش مهم بود که کلا مساله منتفی شد

    در ضمن جناب H2 جان عزيز از راهنماييتون خيلی خيلی ممنونم مثالهای Visual Studio 2008 در زمينه چند ريسمانی خيلی مفيد بود
    با تشکر زياد
    Last edited by Ultimator; 04-02-2008 at 00:14.

  3. #23
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

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


    فقط يچيز ميمونه تغيير تصاوير با کد نويسی برای هر دکمه حجم برنامه رو خيلی زياد ميکنه چون واسه هر دکمه توی چهار پنجتا اونت بايد کد بنويسيم برای حل اين مشکل سعی کردم از user control استفاده کنم که به مشکلات زير خوردم و هنوز در پی راه حل براشون ميگردم
    خوشبختانه اینبار وقت کردم و نمونه ای حاضر کردم.
    نکته جالب دیگری که در مورد روش کارایی گرافیکی XP و Vista یادم رفت خدمت اساتید عرض کنم آن است که تصاویر چهارگانه فوق الذکر در همه موارد به صورت یک تک تصویر ذخیره میشوند نه چهار تصویر !

    یعنی یک تصویر کشیده که چهار تکه پشت سر هم دارد.
    در این نمونه دکمه جدیدی با نام GraphicButton و وراثت از Button تولید شده و تصاویر به همین شیوه استفاده شده و تصاویر موجود در پوشه Resources بی هیچ ادیت و دستکاری و حتی Rename ای، مستقیماً از منابع ویستا قرض گرفته شده !!!!!
    (تصاویر با دو ابعاد مختلف موجود بودند که من برای برنامه از نمونه بزرگ آن استفاده کردم.)

    کلاسس GraphicButton به راحتی و مستقلاً قابل استفاده در هر پروژه ای است
    گرچه سادگی بر کارآیی ترجیح داده شده و گرنه بیشک میشد چیزی خیلی قوی تر و کامل تر تولید کرد، ولی گفتم هم ساده تر باشد و در عوض دوستان متوجه بشوند بهتر است ....
    در وقت هم صرفه جویی

    این کلاسس برای کار در Form فقط یک خصوصیت جدید به نام ImageStyle دارد که یک تصویر میگیرد و آنرا از محور افقی به چهار تصویر میشکند و برای حالات مختلف استفاده میکند و اگر تصویری به ImageStyle اش داده نشود هم مثل یک Button کاملاً عادی رفتار میکند.
    در اصل به علت وراثتف کلاسس GraphicButton همان کلاسس Button است و استفاده از این دو با هم هیچ فرقی ندارد، فقط GraphicButton خصوصیت اضافه ای به نام ImageStyle دارد.
    ضمناً به علت سادگی و عدم نیاز زیاد در شرایط استفاده از عکس، کد رسم Text را ننوشتم، در نتیجه وقتی ImageStyle پر باشد Text نشان داده نمیشود، دوستان میتوانند با تک خط ناقابلی قابلیت فوق را هم به کلاسس GraphicButton اضافه کنند.

    فکر کنم ذکر معایب تکرار کد و Copy و Paste مکرر کد برای هر دکمه لازم نباشد ولی فقط برخی معایب استفاده از UserControl را برای این کار بیان میکنم.
    1- ساخت دو کنترلر (یکی UserControl و دیگری Button) و تخصیص دو hWnd از منابع ویندوز برای عمل فوق
    2- اجبار به اضاه شدن کد برای تغییر سایز (چه دستی چه مدیریت دات نتی با Dock )
    3- موجود نبودن هیچ یک از خواص Button در طرح نهایی
    مثل:
    DialogResult
    AutoSizeMode
    PerformClick
    NotifyDefault
    ResetFlagsandPaint
    AutoEllipsis
    FlatAppearance
    FlatStyle
    IsDefault
    Text
    TextAlign
    TextImageRelation
    و...
    و...
    و...

    رویداد DoubleClick
    رویداد Click
    یعنی شما برای راه اندازی مجدد هر یک از قابلیت های فوق مجدداً باید فوج عظیمی از کدها را بنویسید که پیش از شما مایکروسافت به بهترین شکل ممکن نوشته!
    این هم نوعی تکرار کد و Copy و Paste است
    4- شما در ذات یک UserControl ساخته اید نه Button، شاید خودتان و کاربر برنامه تان را گول بزنید ولی دات نت گول نمیخورد !!!!
    تعجب نکنیدف عرض میکنم!
    منظورم آن است که در خیلی از کدها و مشخصات کلاسس های دیگری که میخواهند از شما یک Button بگیرید UserControl شما را که به ظاهر یک Button است نخواهند پذیرفت.
    مثلاً مثلاً خصویت AcceptButton در Form که مشخص میکند کدام دکمه پیش فرض کلید Enter باشد، UserControl شما را به عنوان ورودی نخواهد پذیرفت، چون وراثتی از Usercontrol است و به کلاسس button کست یا قالب ریزی نمیشود.


    نمونه جاری گرچه کمی شبیه Vista-Photo Gallery است ولی شامل هیچ کدی برای کلیک دکمه ها نیست، اگر خواستید رویدادها را کد نویسی کنید.
    نمونه کد با نسخه 2005 همانگ است و دوستانی هم که فقط میخواهند exe نهایی را ببینند میتوانند انرا از bin\Release پیدا و اجرا کنند.
    چون کلاسس GraphicButton در همان جایی که تولید شده استفاده هم دارد میشود، امکان دارد در صورت خطا در کدهای دیگر و ناتوانی VS در کامپایل زودهنگام کدها، وقتی Form را برای ادامه طراحی باز میکنید با خطا روبرو شوید و محتویات را نبینید، اصلاً نگران نشوید، Form را ببندید و خطا ها را که مانع کامپایل هستند رفع کنید و پروژه را خودتان با فرمان Solution->Rebuild Solution کامپایل کنید .

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    موفق و پیروز باشید،

  4. #24
    حـــــرفـه ای Ultimator's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    NetFrameWork.
    پست ها
    3,239

    پيش فرض

    با سلام
    جناب H2 عزيز اول ميخاستم ازتون تشکر کنم که مشکلاتو حل کرديد همون راهی رو به کار بردين که من دنبالش بودم
    و ميخاستم از user control بهش برسم که نشد و ميخام بگم راه حلتون عاليه ! مرسی!
    در ضمن يه چيزايی هست که ميخاستم بگم ولی فرصت نشد بعدا ميگم

    فقط يچيزی که ميمونه اينه که شما کلاسی که ايجاد کردين فکر کنم با 2 Net. سازگار باشه ولی پروژتون فقط تو Visual studio 2008 باز ميشه
    اگه Visual Studio 2005 دارين نمونه رو با اون ايجاد کنيد که بقيه سرورانی که نسخه 2008 ندارن هم بتونن ازش استفاده کنن اگه ندارين بگين اينکارو بکنم

    باز هم خيلی خيلی ممنونم از شما که با راهنمايياتون هميشه مشکل گشای همه ايد

  5. #25
    آخر فروم باز rezapassword's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    سرزمین اهورایی
    پست ها
    1,678

    پيش فرض

    اچی جون د ر تکمیل فرمایش دوست عزیزم باید بگم که حق با ایشون و خودتون که استادید و این پراجکت ها در 2005 باز نمیشن لطفا برا من 2005 رو بسازد
    قربان شما
    یا علی
    اینو یادم رفت
    سپاس به خاطر تلاشتون

  6. #26
    حـــــرفـه ای Ultimator's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    NetFrameWork.
    پست ها
    3,239

    10

    سلام
    با اينکه زياد فرق نميکنه و فقط کلاسی که H2 جان نوشته بودن مهمه و خودتون ميتونيد با استفاده از اون يه پروژه کامل درست کنيد ولی با اين حال کل پروژه H2 جون رو کپی کردم تو Visual studio 2005 و پروژشو گذاشتم تو اين آدرس که اگه Visual studio 2008 نداشتيد بتونين اين رو باز کنيد
    من ننوشتما نگين خواست به اسم خودش تموم کنه !
    All Right reserverd for H2 Joon Copyright 2hezaro ziad h02.ir !
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید

    ------------------------------------------------------------------------------------------------------

    يه کار ديگه هم کردم نشستم اون کلاسH2 جون رو به #C نوشتم که اونايی که با سی نردبون راحت ترند بتونن بسته به نيازشون توصعه اش بدن ولی شرمنده عجله اي شد و جسارتا هنوز فرصت نشد تست کنم !
    به بزرگواريتون ببخشيد

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    خيلی خيلی موفق باشيد
    Last edited by Ultimator; 05-02-2008 at 00:19.

  7. #27
    آخر فروم باز rezapassword's Avatar
    تاريخ عضويت
    Mar 2007
    محل سكونت
    سرزمین اهورایی
    پست ها
    1,678

    پيش فرض

    ممنون ر فیق
    ولی انا جواب من نستند خودت که میدونی
    ولی از زحمتت مچکرم

  8. #28
    حـــــرفـه ای Ultimator's Avatar
    تاريخ عضويت
    May 2007
    محل سكونت
    NetFrameWork.
    پست ها
    3,239

    13 بازم سلام

    يه سوال ديگه
    من با کد زير از همون کلاس GraphicButton به دکمه تکست اضافه کردم ولی نميدونم چطور بيارمش وسط به جا اينکه مکان ثابت بدم !
    و اينکه رنگش تو اين روش ثابته ! چيکار کنم ؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    در ضمن به رضا جان هم بگم دارم تلاشم رو ميکنم تا چيزی که ميخاين رو آماده کنم
    موفق تر باشين

  9. #29
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    چقدر پر گفتگو !
    در مورد 2008 و 2005
    من عادت ندارم دو نسخه نصب داشته باشم (چه دوتا ویندوز چه دوتا VS !؟ فقط آخرین نسخه)
    مثالها را سعی میکنم با Framework2 بسازم ولی VS همان 2008 می ماند و شرمنده دوستان میشوم.
    و فکر میکردم VS2005 میتواند باز کند، که دوستان گفتند نمیتواند.
    در کل در اینگونه موارد پیشنهاد میکنم که دوستان در VS2005 فرمان New Project بدهند و فایلها را تک تک وارد پروژه کنند.
    البته این تفاوت ها فقط شامل vbproj.* است و سعی میکنم در آینده دو فایل vbproj.* ارائه دهم یکی برای 2008 و یکی برای 2005

    بهرحال فعالاً که جناب ultimator زحمت این تبدیل را کشیدند.
    در مورد #C هم هیچ مشکلی وجود ندارد، من خودم اگر دقت کرده باشید یک سطح پوشه اضافه ایجاد کردم و برنامه را در پوشه VB.Net قرار دادم تا اگر زمانی کسی درخواست #C و یا VC++.Net اش را هم داد، بتوانم بدون تغییر آدرس پوشه ها، نمونه را برای آنها هم اضافه کنم.
    (ولی با وجودی که با VC++.Net و C#.Net هم کار میکنم، یک جورایی همچین بگی نگی با VB.Net راحت تر هستم)

    که در این مورد هم باز جناب ultimator لطف کرده و کد تبدیلی را گذاشته اند که جای تشکر دارد.

    يه سوال ديگه
    من با کد زير از همون کلاس GraphicButton به دکمه تکست اضافه کردم ولی نميدونم چطور بيارمش وسط به جا اينکه مکان ثابت بدم !
    و اينکه رنگش تو اين روش ثابته ! چيکار کنم ؟
    شما که متن و فونت را لطف فرمودید از کنترلر جاری استفاده کرده اید، رنگ را هم لطف میکردید و از ForeColor !!!
    به جای گذاشتن کد، توضیح میدهم تا خودتان انجام دهید.
    1- برای تبدیل Color به Brush میتوانید از System.Drawing.SolidBrush استفاده کنید.
    2- برای تنظیمات متن ترسیمی، Align در نه جهت ! (بالا-چپ، بالا-وسط، بالا-راست و... و... و...) و warp و RightToLeft و... باید از System.Drawing.StringFormat استفاده کنید.
    3- مثل Font و ForeColor و Text و... بهتر است در رسم متن به TextAlign و RightToLeft جاری هم دقت کنید !!!

    اگر نتوانستید، خودم چشم کور کدش را میگذارم. !

  10. #30
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    ولی اینا جواب من نیستند ...
    امیدوارم این باشه!
    چون گفتید که میخواهید تصویر به صورت یک popup در جلوی دکمه نشان داده شود، من از روش بهتری استفاده کردم و به جای کار گرافیکی مرسوم، شفافیت فرمی را که باید در جلو نشان داده میشد تغییر دادم.
    عمل مذکور برای جلوگیری از بلوکه شدن ریسمان اصلی توسط ریسمان دیگری و به کمک کامپونت BackgroundWorker انجام شده و به جای غیر فعال کردم مکانیزم امنیتی "دسترسی ریسمان های مقاطع به کنترلرها" با کمک تابع کوچکی به نام UpdateOpacity همزمانی ریسمان ها تأمین شده.
    با دستکاری دو ثابت POINTERSTEP و TIMESTEP در برنامه قادر خواهید بود سرعت افکت را تنظیم کنید.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    ریاضی را نباید حفظ کرد باید یاد گرفت، آن زمان است که قادر خواهید بود هر مسئله ای را حل کنید.
    برنامه نویسی هم تا حدود زیادی تفکرات شبه ریاضی دارد (و اصولاً یکی از دلایل زیباییش همین است)
    کلی میگویم و منظور فرد خاصی نیست؛ متأسفانه خیلی از افراد سعی میکنند راه حل مسائل برنامه نویسی را حفظ کنند، برنامه نویسی را باید یاد گرفت!
    وقتی حفظ کنید 2 + 3 میشود 5 چیزی بلد شده اید، بدون شک این حفظ کردن سریعتر از یادگیری دلایل است، بد نیست ولی
    وقتی مسئله کمی عوض شود و بشود 2 + 4 سواد قبلی تان بدرد نخواهد خورد و باید مجدداً بروید و حفظ کنید ولی
    اگر یادبگیرید چرا 2 + 3 شد 5 ، گرچه کمی سخت تر و دشوار تر میشود ولی عمریست !
    و دیگر نیازی به حمل کوله باری از اطلاعات و نمونه کدهای هر کاری نخواهید، مفهوم در مغز حک میشود.

    شاید فرد با حافظه حفظی قوی دو عدد چهار رقمی را خیلی سریع جمع کند، ولی بی هیچ شکی ریاضیدان نیست! یک ماشین حساب انسانی است!
    اگر اینطور نبود، ماشین حسابهای جیبی من و شما، خیلی بیشتر از پروفسور مهری یا بهزاد و... ریاضیدان هستند.
    فقط طبق یک فرمول خاص عمل کردن و بلاکهایی را جابه جا کردن فایده ای ندارد ....
    هر وقت خواستید ببینید کد سمپل بدردتان خورد یا نه !؟ ببینید بعد از دیدن، آن را نگاه میدارید یا نه ؟ اگر نگه داشتید، پس بدردتان نخورده !


Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •