رفتن به مطلب
  • 0

مشکل در ذخیره مقدار سیکبار


amiro72

سوال

سلام من یه مشکل دارم  این که اومدم سه تا سیک بار گذاشتم که رنگ متن و رنگ لیبل رو و اندازه متن رو تغییر میده  همه چی درسته  و وقتی تغیرر مدم سیکبار ها رو درست کار میکنه اما نمیدونم چطوری سیوش کنم  که اگه از برنامه خارج شد و برگشت  یا به کل برنامه رو بسن و دوباره واردش شد سیک بار ها توی همون حالتی که قبلا تنظیم شده بمونن

لینک ارسال
به اشتراک گذاری در سایت های دیگر

7 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام

شما یک متغیر از نوع int تعریف کنید بعد از ساب زیر استفاده کنید:

Sub seek_ValueChanged (Value As Int, UserChanged As Boolean)
	size = Value
	File.WriteString(File.DirInternal, "size", size)
End Sub

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

حالا اگر شما دکمه برای ذخیره سازی دارید می تونید تکه کد ذخیره سازی رو در رویداد کلیک باتون قرار بدید اما تغییر مقدار متغیر size باید در همین ساب باشه...

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

شما یک متغیر از نوع int تعریف کنید بعد از ساب زیر استفاده کنید:

Sub seek_ValueChanged (Value As Int, UserChanged As Boolean)
	size = Value
	File.WriteString(File.DirInternal, "size", size)
End Sub

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

حالا اگر شما دکمه برای ذخیره سازی دارید می تونید تکه کد ذخیره سازی رو در رویداد کلیک باتون قرار بدید اما تغییر مقدار متغیر size باید در همین ساب باشه...

 

ممنونم  خودم با رایت استرینگ کار کردم ولی بازم مشکلم حل نشده ببینید من با کدام میگم میخام چیکا کنم بعد راهنمایی کنید 

 

یه تا سیکبار دارم  یکی سایز  یکی رنگ متن یکی رنگ لیبل 


Sub Process_Globals
	Dim size As Int
	Dim color8 As Int
	Dim color9 As Int
End Sub



Sub Globals
	Dim sek As SeekBar
	Dim sekc1 As ColorSeekBar
	Dim sekc2 As ColorSeekBar
End Sub




Sub Activity_Create(FirstTime As Boolean)

	lbl.Initialize("")

		lbl.TextColor=Colors.Black
		lbl.TextSize=18
		lbl.Color = Colors.White


	
sek.Initialize("sek")
sekc1.Initialize("sekc1")
sekc2.Initialize("sekc2")
sek.Max = 50
sek.Value = 14

HorizontalScrollView1.Panel.AddView(sek,0%x,2%y,30%x,6%y)
HorizontalScrollView1.Panel.AddView(sekc1,35%x,2%y,30%x,6%y)
HorizontalScrollView1.Panel.AddView(sekc2,70%x,2%y,30%x,6%y)


HorizontalScrollView1.Height=sekc2.Width+6dip
size = sek.Value
color8 = sekc1.Color
color9 = sekc2.Color

End Sub


Sub Sek_ValueChanged (Value As Int, UserChanged As Boolean)
	lbl.TextSize=Value
	Value = size
End Sub
Sub sekc1_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.TextColor = color
End Sub

Sub sekc2_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.color = color
End Sub


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

 

این باشه 

		lbl.TextColor=Colors.Black
		lbl.TextSize=18
		lbl.Color = Colors.White

و هر وقت از سیک بار ها استفاده کرد 

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

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من دقیقاً منظورتون رو متوجه نشدم. یعنی می خواید اگر کاربر داخل تنظیمات برنامه نرفت و روی تنظیمات تغییری اعمال نکرد کدهایی که دادید اجرا بشه؟!

برای این کار می تونید از کتابخانه AriaSharedPrefermance استفاده کنید. شما وقتی با این کتابخانه مقداری رو Get می کند می تونید به اون یک مقدار دیفالت هم بدید. (یعنی اگر اون متغیر وجود نداشت فلان مقدار برگردونده بشه.) توی کد زیر این موضوع رو می تونید دقیقا متوجه بشید:

ASP.GetInt("Size", 18)

در کد بالا اگر متغیری با نام Size وجود نداشته باشه به صورت پیشفرض مقدار 18 برگردونده می شه.

شما می تونید برای فراخوانی اندازه متن از کد بالا استفاده کنید و در داخل تنظیمات برنامه وقتی مقدار رو ذخیره می کنید از کد زیر استفاده کنید:

ASP.SaveInt("Size", SeekBar1.Value)

موفق باشید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

من دقیقاً منظورتون رو متوجه نشدم. یعنی می خواید اگر کاربر داخل تنظیمات برنامه نرفت و روی تنظیمات تغییری اعمال نکرد کدهایی که دادید اجرا بشه؟!

برای این کار می تونید از کتابخانه AriaSharedPrefermance استفاده کنید. شما وقتی با این کتابخانه مقداری رو Get می کند می تونید به اون یک مقدار دیفالت هم بدید. (یعنی اگر اون متغیر وجود نداشت فلان مقدار برگردونده بشه.) توی کد زیر این موضوع رو می تونید دقیقا متوجه بشید:

ASP.GetInt("Size", 18)

در کد بالا اگر متغیری با نام Size وجود نداشته باشه به صورت پیشفرض مقدار 18 برگردونده می شه.

شما می تونید برای فراخوانی اندازه متن از کد بالا استفاده کنید و در داخل تنظیمات برنامه وقتی مقدار رو ذخیره می کنید از کد زیر استفاده کنید:

ASP.SaveInt("Size", SeekBar1.Value)

موفق باشید

 

 

این روشی که گفتی خیلی خوبه مرسی فقط یه مشک دارم اونجا که مقادیر دیفالت میگیره از نوع int ld'dvi من مقادیرم اینا هس  چجوری برابر با int بزارم ؟

 

lbl.TextColor=Colors.Black
lbl.TextSize=18
lbl.Color = Colors.White
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

این روشی که گفتی خیلی خوبه مرسی فقط یه مشک دارم اونجا که مقادیر دیفالت میگیره از نوع int ld'dvi من مقادیرم اینا هس  چجوری برابر با int بزارم ؟

 

lbl.TextColor=Colors.Black
lbl.TextSize=18
lbl.Color = Colors.White

 

سلام

خوب شما وقتی می خواید اندازه متن لیبل رو بدید می تونید به این صورت عمل کنید:

lbl.TextSize = ASP.GetInt("Size", 18)

الآن اندازه متن لیبل برابر با مقدار Size می شه. در صورتی که Size وجود نداشته باشه مقدار 18 برگردونده می شه و اندازه متن هم 18 می شه.

موفق باشید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

خوب شما وقتی می خواید اندازه متن لیبل رو بدید می تونید به این صورت عمل کنید:

lbl.TextSize = ASP.GetInt("Size", 18)

الآن اندازه متن لیبل برابر با مقدار Size می شه. در صورتی که Size وجود نداشته باشه مقدار 18 برگردونده می شه و اندازه متن هم 18 می شه.

موفق باشید

 

عالییی شد مرسی دمت گرم داداش 

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

Sub sekc1_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.TextColor = color
	asp.SaveInt("Size1", sekc1.Color)
End Sub
Sub sekc2_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.color = color
	asp.SaveInt("Size2", sekc2.Color)
End Sub

و اینم  که خودت گفتی توی اکتیویتی کریت گذاشتم سایز درسته ولی اون  دوتا رنگ کار نمیکنن

		lbl.TextColor = asp.Getint("Size1", 20)
		lbl.TextSize =	asp.GetInt("Size3", 25)
		lbl.Color  = asp.Getint("Size2", 50)
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

عالییی شد مرسی دمت گرم داداش 

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

Sub sekc1_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.TextColor = color
	asp.SaveInt("Size1", sekc1.Color)
End Sub
Sub sekc2_ColorChanged(colorBarValue As Int, alphaValue As Int, color As Int)
	lbl.color = color
	asp.SaveInt("Size2", sekc2.Color)
End Sub

و اینم  که خودت گفتی توی اکتیویتی کریت گذاشتم سایز درسته ولی اون  دوتا رنگ کار نمیکنن

		lbl.TextColor = asp.Getint("Size1", 20)
		lbl.TextSize =	asp.GetInt("Size3", 25)
		lbl.Color  = asp.Getint("Size2", 50)

 

 

بعد یه سوال دیگه این که از  getall  توی این کتابخونه چطوری میشه استفاده کرد؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...