reza_ali202000
جمعه 18 تیر 1395, 15:12 عصر
سلام دوستان عزیز
امروز میخوام در رابطه با طراحی تم صحبت کنم. البته بیشترش ترجمه هست با کمی دخالت.
عموما کامپوننت های زیادی واسه طراحی و تغییر فرمها و ابزار روی اونها وجود داره مثل dev telerik و غیره که تعدادشون هم کم نیستن.
منتها برخی دوستان دوست ندارن از این کامپوننت ها استفاده کنند و در عین حال دلشون میخواد فرمهاشون هم قشنگ بشه و کاربر پسند.
بنده حقیر سعی کردم در این تایپک به این موضوع بپردازم. فقط نکته ای که باید بگم اینه که خلاقیت هم مهم هست. مثلا بنده همه ابزار فتوشاپ رو به صورت حرفه ای بلد هستم ولی اگه کسی بهم بگه مثلا پوستر برام طراحی کن به معنای تمام کلمه نمیتونم. پس ادم باید خلاقیت هم داشته باشه.
و اما بعد....
فرم های که ما طراحی میکنیم ابزار مختلفی روش قرار داره. تقریبا بعضی از مشخصاتشون توی همه کنترلها یکی هست که الان ما به اونا نیاز داریم. مثل رنگ نوشته، رنگ پس زمینه و فونت
برا طراحی تم ما به این سه مورد نیاز خاصی داریم.
برا همین روی این سه مورد بیشتر بحث میکنیم. خوب نکته اول اینه که ببینیم کدوم ابزارها بیشتر استفاده میشن.
Textbox, Label, button, Form بیشترین استفاده میشه. اولین کاری که میکنیم یه کلاس میسازیم:
اسمشو میزاریم theme
بعد از ساخته شدن دوتا using اضاف میکینیم و class رو پابلیک میکنیم:
using System.Windows.Forms;
using System.Drawing;
namespace WindowsFormsApplication44
{
public class theme
حالا کاری که باید بکنیم اینه که برا هر کنترل یه تابع بنویسی. برا label به صورت زیر یه تابع که کلاس استفاده میکنیم:
static void ApplyTheme(Label c)
{
c.Font = new Font("Arial", 12.0f); c.BackColor = Color.Black; c.ForeColor = Color.White;
}
و برا textbox:
static void ApplyTheme(TextBox c)
{
c.Font = new Font("Arial",12.0f); c.BackColor=Color.Blue; c.ForeColor = Color.White;
}
و form:
static void ApplyTheme(Form c)
{
c.Font = new Font("Arial", 12.0f); c.BackColor = Color.Black; c.ForeColor = Color.White;
}
و در نهایت تابع زیر رو اضاف میکنیم.
public static void UseTheme(Form form)
{
ApplyTheme(form);
foreach (var c in form.Controls)
{
switch(c.GetType().ToString())
{
case "System.Windows.Forms.TextBox":
ApplyTheme((TextBox)c);
break;
case "System.Windows.Forms.Label":
ApplyTheme((Label)c);
break;
}
}
}
141322
خوب حالا دستور زیر رو توی فرما فراخونی میکنیم.
public Form1()
{
InitializeComponent();
theme.UseTheme(this);
}
141321
حالا فرمی که طراحی کردیم:
و141319
و خروجی نهایی:
141320
حالا شما میتونید کلاس رو با متغییر طراحی کنید و مثلا فونتها رو سراسری تعریف کنید. میتونید برا هر کنترل همین توابع که به صورت نمونه نوشته شده رو بنویسد و این دیگه بستگی به سلیقه شما داره. نمونه های دیگری از این تم ها:
141315141316141317141318141315
امروز میخوام در رابطه با طراحی تم صحبت کنم. البته بیشترش ترجمه هست با کمی دخالت.
عموما کامپوننت های زیادی واسه طراحی و تغییر فرمها و ابزار روی اونها وجود داره مثل dev telerik و غیره که تعدادشون هم کم نیستن.
منتها برخی دوستان دوست ندارن از این کامپوننت ها استفاده کنند و در عین حال دلشون میخواد فرمهاشون هم قشنگ بشه و کاربر پسند.
بنده حقیر سعی کردم در این تایپک به این موضوع بپردازم. فقط نکته ای که باید بگم اینه که خلاقیت هم مهم هست. مثلا بنده همه ابزار فتوشاپ رو به صورت حرفه ای بلد هستم ولی اگه کسی بهم بگه مثلا پوستر برام طراحی کن به معنای تمام کلمه نمیتونم. پس ادم باید خلاقیت هم داشته باشه.
و اما بعد....
فرم های که ما طراحی میکنیم ابزار مختلفی روش قرار داره. تقریبا بعضی از مشخصاتشون توی همه کنترلها یکی هست که الان ما به اونا نیاز داریم. مثل رنگ نوشته، رنگ پس زمینه و فونت
برا طراحی تم ما به این سه مورد نیاز خاصی داریم.
برا همین روی این سه مورد بیشتر بحث میکنیم. خوب نکته اول اینه که ببینیم کدوم ابزارها بیشتر استفاده میشن.
Textbox, Label, button, Form بیشترین استفاده میشه. اولین کاری که میکنیم یه کلاس میسازیم:
اسمشو میزاریم theme
بعد از ساخته شدن دوتا using اضاف میکینیم و class رو پابلیک میکنیم:
using System.Windows.Forms;
using System.Drawing;
namespace WindowsFormsApplication44
{
public class theme
حالا کاری که باید بکنیم اینه که برا هر کنترل یه تابع بنویسی. برا label به صورت زیر یه تابع که کلاس استفاده میکنیم:
static void ApplyTheme(Label c)
{
c.Font = new Font("Arial", 12.0f); c.BackColor = Color.Black; c.ForeColor = Color.White;
}
و برا textbox:
static void ApplyTheme(TextBox c)
{
c.Font = new Font("Arial",12.0f); c.BackColor=Color.Blue; c.ForeColor = Color.White;
}
و form:
static void ApplyTheme(Form c)
{
c.Font = new Font("Arial", 12.0f); c.BackColor = Color.Black; c.ForeColor = Color.White;
}
و در نهایت تابع زیر رو اضاف میکنیم.
public static void UseTheme(Form form)
{
ApplyTheme(form);
foreach (var c in form.Controls)
{
switch(c.GetType().ToString())
{
case "System.Windows.Forms.TextBox":
ApplyTheme((TextBox)c);
break;
case "System.Windows.Forms.Label":
ApplyTheme((Label)c);
break;
}
}
}
141322
خوب حالا دستور زیر رو توی فرما فراخونی میکنیم.
public Form1()
{
InitializeComponent();
theme.UseTheme(this);
}
141321
حالا فرمی که طراحی کردیم:
و141319
و خروجی نهایی:
141320
حالا شما میتونید کلاس رو با متغییر طراحی کنید و مثلا فونتها رو سراسری تعریف کنید. میتونید برا هر کنترل همین توابع که به صورت نمونه نوشته شده رو بنویسد و این دیگه بستگی به سلیقه شما داره. نمونه های دیگری از این تم ها:
141315141316141317141318141315