PDA

View Full Version : سوال: انتخاب و تغییر رنگ پس زمینه برنامه توسط کاربر



Iran58
دوشنبه 02 تیر 1393, 06:47 صبح
سلام
چگونه می توانم کاری کنم که کاربر خودش بتواندرنگ پس زمینه برنامه را انتخاب و تغییر بدهد

یونس ابراهیمی
دوشنبه 02 تیر 1393, 07:25 صبح
سلام

جوابتون دقیقا توی این لینکه :

http://www.w3-farsi.com/%DA%A9%D9%86%D8%AA%D8%B1%D9%84-colordialog/

Iran58
دوشنبه 02 تیر 1393, 07:43 صبح
سلام

جوابتون دقیقا توی این لینکه :

http://www.w3-farsi.com/%DA%A9%D9%86%D8%AA%D8%B1%D9%84-colordialog/
سلام
من می خواهم در کلیه صفحات پروژه این تغییر اعمال شود

Davidd
دوشنبه 02 تیر 1393, 08:03 صبح
ميتوني يه فايل XML بسازي و كليه تنظيمات برنامه مثل رنگ و ... توش ذخيره كني. در ابتداي اجراي برنامه فايل ميخوني و در يك كلاس ذخيره مي كني. يك متد هم مينويسي كه تنظيماتو به فرم اعمال كنه مثلا رنگو عوض كنه. اين متد در لودينگ همه فرم ها صدا ميزني.
راه ساده تر هم اينه كه رنگ در داخل كلاس setting ذخيره كني و در لودينگ فرم ها مقدارشو بخوني و اعمال كني.

Iran58
دوشنبه 02 تیر 1393, 08:07 صبح
ميتوني يه فايل XML بسازي و كليه تنظيمات برنامه مثل رنگ و ... توش ذخيره كني. در ابتداي اجراي برنامه فايل ميخوني و در يك كلاس ذخيره مي كني. يك متد هم مينويسي كه تنظيماتو به فرم اعمال كنه مثلا رنگو عوض كنه. اين متد در لودينگ همه فرم ها صدا ميزني.
راه ساده تر هم اينه كه رنگ در داخل كلاس setting ذخيره كني و در لودينگ فرم ها مقدارشو بخوني و اعمال كني.
سلام
میشه یک نمونه یا کدی قرار بدهید

Davidd
دوشنبه 02 تیر 1393, 08:36 صبح
راه دوم كه ساده تره ميگم. در Solution Explorer يه پوشه به نام Properties هست كه يه فايل به نام Settings.settings داره. اين فايلو باز مي كني يه جدول باز ميشه كه هر سطرش نشان دهنده يه مقدار هست كه ميخاي ذخيره كني. قسمت Name يه نام انتخاب كن مثلا BackColor ، فيلد Type، نوع int بذار و يه مقدار اوليه هم بهش بده.
حالا در loading فرم بنويس : this.BackColor = Color.FromArgb(Properties.Settings.Default.BackCol or);
براي ذخيره رنگ :
Color c=// رنگ مورد نظر
Properties.Settings.Default.BackColor=c.ToArgb();
Properties.Settings.Default.Save();

sagggad
دوشنبه 02 تیر 1393, 12:29 عصر
سلام
سوال زیاد جواب سختی نداره.
شما میتونید با استفاده از یک Color Dialog در فرم تنظیمات رنگ رو تغییر بدید و سپس با استفاده از Settings ها اون رو ذخیره کنید که کاربر برای بار بعد هم وقتی وارد میشه همون رنگ باشه.
در اینجا بهتون یه توضیحی داده شده :
http://videolearning.rozblog.com/Forum/Catgory/5/Post/25

Iran58
سه شنبه 03 تیر 1393, 07:25 صبح
سلام
ببینید من یک فرم دارم که همه فرمها از روی آن ارث می برند(مانند تغییر فونت و رنگ پس زمینه )هنگام طراحی
حالا می خواهم یک فرم هم داشته باشم که کاربر بعداز لاگین هرگاه خواست بتواند رنگ پس زمینه را به دلخواه خود تغییر بدهد

aliagamon
سه شنبه 03 تیر 1393, 08:10 صبح
خب شما تو فرم لود همون فرم که همه ازش ارث میبرن بنویس که بیاد رنگ رو از setting بخونه و بکنه رنگ بکگراند خودش ... برای همه ی فرم ها اعمال میشه

shahryari
سه شنبه 03 تیر 1393, 08:16 صبح
با استفاده از کلاس ColorConverter میتونی رنگ رو به استرینگ تبدیل کنید و در بانک یا فایل ini ذخیره کنی
و هنگام فراخوانی هم دوباره با استفاده از همان کلاس ، متن رو بگیری و تبدیل به رنگ بکنی و به فرمت اعمال کنی

Iran58
سه شنبه 03 تیر 1393, 08:20 صبح
خب شما تو فرم لود همون فرم که همه ازش ارث میبرن بنویس که بیاد رنگ رو از setting بخونه و بکنه رنگ بکگراند خودش ... برای همه ی فرم ها اعمال میشه
سلام
چطوری می توانم setting را برایش فراخوانی کنم

Iran58
سه شنبه 03 تیر 1393, 08:20 صبح
با استفاده از کلاس ColorConverter میتونی رنگ رو به استرینگ تبدیل کنید و در بانک یا فایل ini ذخیره کنی
و هنگام فراخوانی هم دوباره با استفاده از همان کلاس ، متن رو بگیری و تبدیل به رنگ بکنی و به فرمت اعمال کنی
سلام
میشه یکم بیشتر باکد توضیح بدهید

shahryari
سه شنبه 03 تیر 1393, 08:30 صبح
سلام
میشه یکم بیشتر باکد توضیح بدهید

ColorConverter cc = new ColorConverter();
this.BackColor = (Color)cc.ConvertFromString("Red"); //تبدیل متن به رنگ


label1.Text = cc.ConvertToString(this.BackColor);// تبدیل رنگ به متن جهت ذخیره در بانک