PDA

View Full Version : حرفه ای: طراحی دکمه گرافیکی با شکل دلخواه در WinForms



حسین.کاظمی
چهارشنبه 10 شهریور 1395, 08:39 صبح
باسلام به همگی
در سی شارپ [ویندوز فرم]این امکان را دارد پس از کلیک بروی یک دکمه شکل ظاهری دکمه به شکل تصویر زیر شود؟؟؟؟؟


142287

پیشاپیش ممنون از پاسخ هاتون

alish123456
چهارشنبه 10 شهریور 1395, 10:33 صبح
باسلام به همگی
در سی شارپ [ویندوز فرم]این امکان را دارد پس از کلیک بروی یک دکمه شکل ظاهری دکمه به شکل تصویر زیر شود؟؟؟؟؟


142287

پیشاپیش ممنون از پاسخ هاتون
تو html , css بیشتر از این طرحا میزنن
تو سی شارپ هم یه راه ساده بدون کد نویسی هم میشه ولی خوب فکر نکنم زیاد جالب باشه درعوض میشه همون چیزی که میخوای
از پیکچرباکس به جای باتن استفاده کن و حاصیت های یه دکمه رو بهش بده
و این عکسی رو هم که این جا گذاشتی رو تو رویدادی که میخوای ه پیکچرباکس بزار که این عکس جاییگذین عکس قبلی بشه

En_MK
چهارشنبه 10 شهریور 1395, 10:38 صبح
لینک نموووونه کد (http://www.codeproject.com/Articles/49802/Create-a-WPF-Custom-Control-Part)

حسین.کاظمی
چهارشنبه 10 شهریور 1395, 11:21 صبح
تو html , css بیشتر از این طرحا میزنن
تو سی شارپ هم یه راه ساده بدون کد نویسی هم میشه ولی خوب فکر نکنم زیاد جالب باشه درعوض میشه همون چیزی که میخوای
از پیکچرباکس به جای باتن استفاده کن و حاصیت های یه دکمه رو بهش بده
و این عکسی رو هم که این جا گذاشتی رو تو رویدادی که میخوای ه پیکچرباکس بزار که این عکس جاییگذین عکس قبلی بشه


با css , html بلدم ولی یه پروژه ویندوزی است که میخام با کنترل باتن اینکار را کنم اگر امکانش داره!! اون راه حلم که فرمودید انجام دادم خیلی جالب و اصولی نیست ولی باز موچکرم که جوابمو دادید.....

ژیار رحیمی
چهارشنبه 10 شهریور 1395, 14:26 عصر
سه تا تصویر در حالات مختلف دکمه در فتوشاپ طراحی کن و میتونی به جای دکمه از pictureBox استفاده کن و برای رویدادهای MouseOver ،MouseLeave و موس کلیک تصویر مربوط به حالت رو در PictureBox لود کن برای راحتی کار همین طراحی رو در قالب یک custome control یا user control در بیاری که تکرار کد نویسی هم نشود

حسین.کاظمی
چهارشنبه 10 شهریور 1395, 20:48 عصر
میخاستم ببینم آیا با گرافیک در سی شارپ نمی شه انجام داد؟؟

c0mmander
چهارشنبه 10 شهریور 1395, 21:15 عصر
همونطور که ژیار رحیمی (http://barnamenevis.org/member.php?48557-%DA%98%DB%8C%D8%A7%D8%B1-%D8%B1%D8%AD%DB%8C%D9%85%DB%8C) گفت. استفاده از 3 تا عکس و یا برای شکیل تر شدن ساخت یک userControl و چندتا رویداد موس + یک لیبل با بک گراند ترنسپرنت قابل انجام هست. روش سریع و ساده هست در حالت ویندوز فرم.
راه دیگه ش اینکه به Button بکگراند دلخواهت رو بده اما خاصیت flatstyle رو برابر flat کن. در نهایت با 3 4 تا رویداد موس تغییرات عکس رو اعمال کن مثلا


button1.Image = Properties.Resources.bg_bt_clicked;


راه دیگه شم اینکه که یک wpf usercontrol درست کن اونجا هر کاری خواستی انجام بده.

راه های دیگه هم ممکنه باشه اما برای یک دکمه ساده ارزش نداره واقعا این همه وقت صرف بشه همون روش اول یا دوم سریع و راحت به تمام نیاز رو براورده میکنه.

mrprestige
چهارشنبه 10 شهریور 1395, 21:45 عصر
عرض سلام و ادب دوست من، فکر نمیکنم دیگه سخنی باقی مونده باشه . دوستان تمام و کمال پاسختون رو دادن دوست عزیز ولی توی سوال قبلی تون فرموده بودید "
آیا با گرافیک در سی شارپ نمی شه انجام داد؟ " اگه منظورتون کلاس Graphic هست که این امر امکان پذیر نیست ( نسبت به اون شکل دلخواهی که در عکس فرستاده بودید ) و اگر باز اگه امکان پذیر بود به قول دوستمون c0mmander (http://barnamenevis.org/member.php?332447-c0mmander) ارزشش رو نداره چون شما به هر حال مسلما شما فقط از یک Button که توی برنامه تون استفاده نمیکنید ! بنظر من الکی Performance برنامه تون رو برای حاشیه ها پایین نیارید .

پیروز و موفق باشید

حسین.کاظمی
چهارشنبه 10 شهریور 1395, 23:00 عصر
دست دوستان درد نکنه که راهنماییم کردند فقط می خاستم ببینم که با کلاس گرافیک میشه یا خیر که هرچی جست و جو کردم چیزی دستگیرم نشد و به قول دوست عزیزمونم mrprestige (http://barnamenevis.org/member.php?338119-mrprestige) اینکار با کلاس گرافیک امکان پذیرنیست....

ممنون از همگی

daniyaltjm
پنج شنبه 11 شهریور 1395, 01:32 صبح
سلام، توسط این آموزش و با استفاده از کامپوننت mhkShapedButton می تونید هر دکمه ای رو با هر شکلی درست کنید.

آموزش در یوتیوب (https://www.youtube.com/watch?v=K_JzL4kzCoE)

vistacali
پنج شنبه 11 شهریور 1395, 07:51 صبح
سلام، توسط این آموزش و با استفاده از کامپوننت mhkShapedButton می تونید هر دکمه ای رو با هر شکلی درست کنید.

آموزش در یوتیوب (https://www.youtube.com/watch?v=K_JzL4kzCoE)

در زبان سی شارپ نیازی نیست که هیچ کامپوننتی را استفاده کنید کافیه فقط یک کلاس از نوع btn دست کنید و همون btn پدر را override کنید :قهقهه:

Mahmoud.Afrad
پنج شنبه 11 شهریور 1395, 13:34 عصر
دست دوستان درد نکنه که راهنماییم کردند فقط می خاستم ببینم که با کلاس گرافیک میشه یا خیر که هرچی جست و جو کردم چیزی دستگیرم نشد و به قول دوست عزیزمونم mrprestige (http://barnamenevis.org/member.php?338119-mrprestige) اینکار با کلاس گرافیک امکان پذیرنیست....

ممنون از همگی

http://stackoverflow.com/a/16815920

daniyaltjm
پنج شنبه 11 شهریور 1395, 13:36 عصر
در زبان سی شارپ نیازی نیست که هیچ کامپوننتی را استفاده کنید کافیه فقط یک کلاس از نوع btn دست کنید و همون btn پدر را override کنید :قهقهه:

بسیار خوب پس شما یکی از اون سه دکمه ای که توی آموزش دیدین رو بدون کامپوننت طراحی کنید شاید یه چیزی یاد گرفتیم!!!:لبخندساده:

mrprestige
جمعه 12 شهریور 1395, 00:18 صبح
http://stackoverflow.com/a/16815920

عرض ادب و احترام خدمت استاد بزرگوار جناب افراد ، استاد جسارتا این کد شما برای اینه که دکمه بشکل گرد دربیاد . بنده عرض کردم نسبت به اون شکلی (http://barnamenevis.org/attachment.php?attachmentid=142287&d=1472618342) که اون دوستمون (جناب حسین.کاظمی (http://barnamenevis.org/member.php?299349-%D8%AD%D8%B3%DB%8C%D9%86-%DA%A9%D8%A7%D8%B8%D9%85%DB%8C)) خواسته بودن نمیتونن از کلاس Graphic استفاده کنن اصلا منظورم این نبود که اصلا نشه از این کلاس استفاده کرد .

Mahmoud.Afrad
جمعه 12 شهریور 1395, 01:38 صبح
عرض ادب و احترام خدمت استاد بزرگوار جناب افراد ، استاد جسارتا این کد شما برای اینه که دکمه بشکل گرد دربیاد . بنده عرض کردم نسبت به اون شکلی (http://barnamenevis.org/attachment.php?attachmentid=142287&d=1472618342) که اون دوستمون (جناب حسین.کاظمی (http://barnamenevis.org/member.php?299349-%D8%AD%D8%B3%DB%8C%D9%86-%DA%A9%D8%A7%D8%B8%D9%85%DB%8C)) خواسته بودن نمیتونن از کلاس Graphic استفاده کنن اصلا منظورم این نبود که اصلا نشه از این کلاس استفاده کرد .

لینک فقط برای مثال بود؛
اگر منظورتون شکل پست اول هست، شدنی هست. کافیه از طریق متد AddPolygon چندظلعی مورد نیاز رو به GraphicsPath اضافه کنید و طبق لینکی که گذاشتم رسم رو انجام بدید.

محمد آشتیانی
جمعه 12 شهریور 1395, 03:04 صبح
سلام
مجبور شدم این نمونه رو آماده کنم تا برای اثبات عرایضم مجبور نباشم توضیح بیشتری بدم. :)
پس می شود که بشود



موفق باشید.

Mahmoud Zaad
جمعه 12 شهریور 1395, 09:47 صبح
دوستان عزیز! در برنامه نویسی "نمیشه" نداریم!

حسین.کاظمی
جمعه 12 شهریور 1395, 10:24 صبح
می دونستم که میشه چون گرافیک سی شارپ فراتر از این چیزهاست ......
دست جناب آقای آشتیانی درد نکنه بابت نمونه کد :تشویق::تشویق::تشویق::تشویق:: شویق:

mrprestige
جمعه 12 شهریور 1395, 10:26 صبح
دوستان عزیز! در برنامه نویسی "نمیشه" نداریم!

درسته حق با شماست ، بالاخره فرد آماتوری مثل بنده همچین اشتباهی ازش سر میزنه ولی نسبت به تجربه اندکی (نسبت به استاتید گروه) که بدست آوردم این رو میدونم که تمرکزم رو روی بدنه اصلی پروژه ام بزارم بعد برم سراغ user interface

حسین.کاظمی
جمعه 12 شهریور 1395, 10:42 صبح
این رو میدونم که تمرکزم رو روی بدنه اصلی پروژه ام بزارم بعد برم سراغ user interface

دقیقا منم چندین سال است که دارم بروی ux کار میکنم بعد از اینکه تجربه اندکی پیدا کردم الان تازه دارم بروی ui برنامه هام کار میکنم.

حسین.کاظمی
جمعه 12 شهریور 1395, 10:44 صبح
دوستان یبار برنامه را اجرا کردم اجرا شد برای بار دوم خطای زیر را داد.......


142356

Mahmoud Zaad
جمعه 12 شهریور 1395, 11:36 صبح
طبق این لینک (http://stackoverflow.com/questions/7795926/visual-studio-error-the-generateresource-task-failed-unexpectedly-the-fil) باید فولد obj رو پاک کنید و پروژه رو مجدداً build کنید. شاید clean و build هم جواب بده!
اطلاعات بیشتر (https://www.google.com/search?q=the+generateresource+task+failed+unexpect edly&ie=utf-8&oe=utf-8&client=firefox-b)

mrprestige
جمعه 12 شهریور 1395, 11:46 صبح
دوستان یبار برنامه را اجرا کردم اجرا شد برای بار دوم خطای زیر را داد.......


142356

مجددا سلام ، دوست من این خطا دلیل زیاد میتونه داشته باشه یا میتونه فایل Resource تون خراب باشه یا ممکنه زیر شاخه Reference هاتون روی شبکه Shared یا اینکه مشکل از Frame work تون باشه . اون فلش کنار خطا تون رو بزنید تا Details خطا رو ببینیم چی هست .

حسین.کاظمی
جمعه 12 شهریور 1395, 11:53 صبح
مجددا سلام ، دوست من این خطا دلیل زیاد میتونه داشته باشه یا میتونه فایل Resource تون خراب باشه یا ممکنه زیر شاخه Reference هاتون روی شبکه Shared یا اینکه مشکل از Frame work تون باشه . اون فلش کنار خطا تون رو بزنید تا Details خطا رو ببینیم چی هست .

سلام مجدد بر تو دوست عزیز
با راهنمایی دوستمون جناب آقای Mahmoud Zaad (http://barnamenevis.org/member.php?199295-Mahmoud-Zaad) مشکل حل شد..:چشمک:

mortezahamon
یک شنبه 24 تیر 1397, 05:08 صبح
سلام و وقت بخیر ضمن عرض خداقوت بابت زحمات لینک فایلی که جناب آشتیانی گذاشتن مورد داره اگه زحمت بکشید و اینفایل به ایمیلم ارسال کنید سپاسگذارم ....... m.designer313@gmail.com

َAli_Sh_81
شنبه 20 اردیبهشت 1399, 22:39 عصر
سلام، توسط این آموزش و با استفاده از کامپوننت mhkShapedButton می تونید هر دکمه ای رو با هر شکلی درست کنید.

آموزش در یوتیوب (https://www.youtube.com/watch?v=K_JzL4kzCoE)

با سلام جون داداش هر کی این کامپونت داره واسه من بفرسته تو یوتیوپ آموزشو دیدم ولی هرچی گشتم کامپونتشو پیدا نکردم .