PDA

View Full Version : سوال: ساختن تنظیمات برای برنامه



Maziar47
سه شنبه 30 شهریور 1395, 10:26 صبح
سلام میخواستم بدونم که چجوری میشه تنظیماتی رو برای برنامه ساخت که پایدار بمونه یعنی اگر کاربر رنگ قرمز رو برای بگراند انتخاب کرد بعد از خارج شدن و دوباره واردن شدن به برنامه هنوز بگراند برنامه قرمز باشه ممنون میشم اگه جواب بدید.

daniyaltjm
سه شنبه 30 شهریور 1395, 10:53 صبح
سلام خوب شما میتونید هم از دیتابیس هم از فایل تکست ساده و هم از فایل XML یا INI یا ... استفاده کنید، من خودم از دیتابیس استفاده کردم اگه شد برنامشو میزارم .

windowsyar
سه شنبه 30 شهریور 1395, 11:40 صبح
با سلام
میشه تو خود برنامه تو seting هم ذخیره کرد
که بهترین کاره ولی من بلد نیستم
لطفا دوستان اگه می دونن چجوری این کار انجام میشه بگن

kamiloted
سه شنبه 30 شهریور 1395, 12:10 عصر
با سلام
میشه تو خود برنامه تو seting هم ذخیره کرد
که بهترین کاره ولی من بلد نیستم
لطفا دوستان اگه می دونن چجوری این کار انجام میشه بگن

سلام این میشه تو ریجستری هم میشه.
جستجو کن ذخیره تغییرات در ریجستری
کدهاش رو پیدا میکنی

alexmcse
سه شنبه 30 شهریور 1395, 13:57 عصر
سلام
1- پراپرتی ها رو تعریف میکنیم (عکس ضمیمه)
2-
private void buttonItem1_Click(object sender , EventArgs e) {

WindowsFormsApplication1.Properties.Settings.Defau lt.CustomColor = Color.Yellow;
WindowsFormsApplication1.Properties.Settings.Defau lt.str = "good";
//اگر بخواهید مقدارهای جدید که به پراپرتی ها میدهید ذخیره شود باید از کد زیر حتما استفاده کنید
WindowsFormsApplication1.Properties.Settings.Defau lt.Save();


MessageBox.Show (WindowsFormsApplication1.Properties.Settings.Defa ult.CustomColor.Name);
MessageBox.Show (WindowsFormsApplication1.Properties.Settings.Defa ult.str);
}


private void buttonItem2_Click(object sender , EventArgs e)
{
//////*****************
//از کد زیر به میتوان برای برگرداندن مقدار پراپرتی به حالت پیش فرض استفاده کرد
//مثلاپراپرتی بالا به مقدار پیش فرض یعنی(قرمز )تغییر خواهد کرد
WindowsFormsApplication1.Properties.Settings.Defau lt.Reset ();

MessageBox.Show(WindowsFormsApplication1.Propertie s.Settings.Default.CustomColor.Name);
MessageBox.Show(WindowsFormsApplication1.Propertie s.Settings.Default.str);
}

:تشویق::تشویق:

mrali.jalali
چهارشنبه 31 شهریور 1395, 09:42 صبح
سلام و در همین راستا منم یک سوال داشتم
من خودم همیشه از جدول داخل دیتابیس استفاده می کنم .(اینجوری تنظیمات برای شبکه هم قابل استفاده می باشد تا وقتی داخل رجیستری و ... باشه)
سوالم اینه برای طراحی چه روش بهتره ؟
اینکه برای هر مورد یک فیلد تعریف کنیم و مقدار بگیره . (حالت ستونی) یا اینکه یک جدول با دو ستون تعریف کنم یکی به عنوان نوع و یکی به عنوان مقدار (حالت ردیفی)
برنامه هم در حال توسعه می باشد تمام تنظیمات از پیش مشخص نیست

Helpco
چهارشنبه 31 شهریور 1395, 10:20 صبح
سلام و در همین راستا منم یک سوال داشتم
من خودم همیشه از جدول داخل دیتابیس استفاده می کنم .(اینجوری تنظیمات برای شبکه هم قابل استفاده می باشد تا وقتی داخل رجیستری و ... باشه)
سوالم اینه برای طراحی چه روش بهتره ؟
اینکه برای هر مورد یک فیلد تعریف کنیم و مقدار بگیره . (حالت ستونی) یا اینکه یک جدول با دو ستون تعریف کنم یکی به عنوان نوع و یکی به عنوان مقدار (حالت ردیفی)
برنامه هم در حال توسعه می باشد تمام تنظیمات از پیش مشخص نیست
بنظر من 3 ستون یکی id یکی نام متغیر تنظیمات و یکی تنظیمات انتخاب شده

محمد آشتیانی
چهارشنبه 31 شهریور 1395, 11:20 صبح
سلام و در همین راستا منم یک سوال داشتم
من خودم همیشه از جدول داخل دیتابیس استفاده می کنم .(اینجوری تنظیمات برای شبکه هم قابل استفاده می باشد تا وقتی داخل رجیستری و ... باشه)
سوالم اینه برای طراحی چه روش بهتره ؟
اینکه برای هر مورد یک فیلد تعریف کنیم و مقدار بگیره . (حالت ستونی) یا اینکه یک جدول با دو ستون تعریف کنم یکی به عنوان نوع و یکی به عنوان مقدار (حالت ردیفی)
برنامه هم در حال توسعه می باشد تمام تنظیمات از پیش مشخص نیست

سلام
به نظرم نیاز به سه جدول دارید

1- جدول تنظیمات که شامل فیلد های SettingId و SettingName

2- جدول کاربران که حداقل فیلدهای UserId , UserName رو داشته باشه (این جدول میتونه کاملتر از این باشه)

3- جدول مقادیر تنظیمات که به ازای هر کاربر پر میشه و میتونه شامل فیلدهای UserId , SettingId , Value باشه

به این ترتیب به ازای هر تنظیم یک رکورد در جدول اول خواهید داشت ، و به ازای هر User ، تمام فیلدهای جدول اول در جدول سوم با مقادیرشون ذخیره می شوند. با این روش هر کاربر تنظیماتی با مقادیر خودش رو خواهد داشت.
و اینکه نهایتا Connection String رو مجبورید بصورت لوکال ذخیره کنید.

این هم یک مثال کوچک از جداول:

جدول تنظیمات: (جدول اول)


SettingName
SettingId


Timeout
1000


BackColor
1001




جدول کاربران: (جدول دوم)


UserName
UserId


Admin
10


TestUser
11




جدول مقادیر تنظیمات: (جدول سوم)


Value
SettingId
UserId


500
1000
10


Red
1001
10


600
1000
11


Green
1001
11





موفق باشید.

حسین.کاظمی
چهارشنبه 31 شهریور 1395, 12:01 عصر
سلام
اگر برنامه کوچکی است و تک کاربری است بهتر از همون تنظیمات ویژوال ذخیره بشه ولی اگر بیش از یک نفر باشه کاربرها و تنظیمات برای هر کاربر متفاوت باشد بنظر من با تجربه ایی که دارم از فایل های xml استفاده کنید...

من خودم برنامه های تحت شبکه هامو برای ذخیره تنظیماتی مثل انتخاب زبان، عکس یا رنگ بک گراند و.... را برای هر کاربر در یک فایل xml ذخیره میکنم بدون اینکه خود کاربر متوجه بشه:لبخند: