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

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


حمید حمید

سوال

سلام دوستان 

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

یا اینکه چطور میشه یک کلمه داخل پرانتز رو رنگی کرد یا اینکه داخل پرانتز نباشه رنگیش کرد 

و اینکه چطوری میشه کاری کرد کع تمام اعداد داخل متن رنگی شن

داخل تاپیک ها گشتم متنی که داخل بیسیک نوشته میشه مثال زده شده بود اما برای اینکه چطور میشه متن داخل دیتابیس رو اینطوری کرد چیزی پیدا نکردم 

پیشاپیش ممنون از کمکتون:53:

Sub Activity_Create(FirstTime As Boolean)

If File.Exists(File.DirInternal,"1376rjggu.db") = False Then
		File.Copy(File.DirAssets,"1376rjggu.db",File.DirInternal,"1376rjggu.db")
End If
	sql.Initialize(File.DirInternal,"1376rjggu.db",True)
	ScrollView1.Initialize(600%y)    
	Activity.AddView(ScrollView1,0,0,100%x,100%y)
   Activity.Color = Colors.White
	
	lbl.Initialize("")
	lbl.Color = Colors.White
	lbl.TextColor = Colors.Black
	lbl.Typeface = Typeface.DEFAULT_BOLD
	ScrollView1.Panel.AddView(lbl,15dip,15dip,100%x-30dip,100%y)
	cur = sql.ExecQuery("SELECT * FROM tbltest")
	For i = 0 To cur.RowCount - 1
		cur.Position = i

		lbl.Text = lbl.Text&CRLF&CRLF&CRLF&CRLF&CRLF&cur.GetString("matn") 
		lbl.Height = su.MeasureMultilineTextHeight(lbl,lbl.Text)
		ScrollView1.Panel.Height = lbl.Height + 50dip
	Next
	
End Sub

این کدایی هست که برای فراخوانی متن دیتابیس فراخوانی کردم چطوری مثلا یک کلمه مثلا (فوری)  یا یک جمله مثلا(توجه کنید) رو که داخل ردیف پنجم ستونم هست رو قرمز کنم

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

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

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

در 1 ساعت قبل، حمید حمید گفته است :

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

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

از چه نسخه ای از کتابخونه richstring استفاده میکنین این کد ها که نوشتین تو کتابخونه من نیست مثلا setfont تو خود سایت اصلی نگاه کردم اخرین نسخش 1.5 بود منم اون نسخه رو دارم

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

متن دیتابیس:

{B}عنوان{B}
این متن تست برای بولد کردن متن است.

الان ما برای اینکه بتونیم فقط اون کلمه رو رنگی کنیم میایم از تگ استفاده میکنیم و کلمه رو مشخص میکنیم الان از {B} .... {B} استفاده کردیم..  (به جای کلمه B هر کلمه دیگه ایی میتونید بزارید)

کد:

Dim rs As RichString
rs.Initialize(Label1.Text)
rs.Color2(Colors.White,"{B}") 'اینجا میگیم که اگر شما کلمه پیدا کردی که با این تگ مشخصی شده بود شما بیا و رنگش رو سفید کن

بقیه متد ها هم همینجوری کار میکنن شما باید شماره 2 اون متد رو صدا بزنید

کتابخونه ورژن 1.5

 

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

در 19 ساعت قبل، حمید حمید گفته است :

 

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

 Dim rs As RichString
   rs.Initialize(Label1.Text)
   rs.Color(Colors.Red, 0, 4).Color(Colors.Blue, 4, 8).SetFont(Font.CreateNewBold(30), 1, 5)
   rs.Strikethrough(True, 5, 10)
   rs.Underline(True, Colors.Blue, 0, 10)
   rs.SetFont(Font.CreateNewItalic(20), 0, rs.Text.Length-5)
   rs.SetFont(Font.CreateNewBold(30), 4, 7)
   rs.BackgroundColor(0xFFC0C000, 5, 20)
   rs.SetToLabel(Label1)

 

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

در 4 ساعت قبل، محمدرضا شاهپیری گفته است :

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


 Dim rs As RichString
   rs.Initialize(Label1.Text)
   rs.Color(Colors.Red, 0, 4).Color(Colors.Blue, 4, 8).SetFont(Font.CreateNewBold(30), 1, 5)
   rs.Strikethrough(True, 5, 10)
   rs.Underline(True, Colors.Blue, 0, 10)
   rs.SetFont(Font.CreateNewItalic(20), 0, rs.Text.Length-5)
   rs.SetFont(Font.CreateNewBold(30), 4, 7)
   rs.BackgroundColor(0xFFC0C000, 5, 20)
   rs.SetToLabel(Label1)

 

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

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

از چه نسخه ای از کتابخونه richstring استفاده میکنین این کد ها که نوشتین تو کتابخونه من نیست مثلا setfont تو خود سایت اصلی نگاه کردم اخرین نسخش 1.5 بود منم اون نسخه رو دارم

 

 

 

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

در 3 ساعت قبل، Mr.Kafiri گفته است :

{B}عنوان{B} این متن تست برای بولد کردن متن است.

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

در 3 ساعت قبل، Mr.Kafiri گفته است :

Dim rs As RichString rs.Initialize(Label1.Text) rs.Color2(Colors.White,"{B}")

این کدهارو داخل حلقه فور اضافه کنم؟

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

در 2 دقیقه قبل، حمید حمید گفته است :

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

 خیر اضافه نمیشن

این کدهارو داخل حلقه فور اضافه کنم؟ خیر ، بعد از حلقه 


Dim rs As RichString
rs.Initialize(Label1.Text)
rs.Color2(Colors.White,"{B}")
.
.
.

Label1.Text = rs

 

 

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

در 17 ساعت قبل، Mr.Kafiri گفته است :

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

متن دیتابیس:


{B}عنوان{B}
این متن تست برای بولد کردن متن است.

الان ما برای اینکه بتونیم فقط اون کلمه رو رنگی کنیم میایم از تگ استفاده میکنیم و کلمه رو مشخص میکنیم الان از {B} .... {B} استفاده کردیم..  (به جای کلمه B هر کلمه دیگه ایی میتونید بزارید)

کد:


Dim rs As RichString
rs.Initialize(Label1.Text)
rs.Color2(Colors.White,"{B}") 'اینجا میگیم که اگر شما کلمه پیدا کردی که با این تگ مشخصی شده بود شما بیا و رنگش رو سفید کن

بقیه متد ها هم همینجوری کار میکنن شما باید شماره 2 اون متد رو صدا بزنید

کتابخونه ورژن 1.5

 

مرسی یاد گرفتم چطوری میشه رنگی کرد اما میخواستم سایز رو اضافه کنم نتونستم هیچ ویژگی هم نداشت به نام textsize از این استفاده کردم اینم نشد

Dim rs As RichString
	rs.Initialize(lbl.Text)
	rs.RelativeSize2(24.0,"{B}")
	lbl.Text =rs

برای بولد  کردن هم این کد رو نوشتم بازم نشد

rs.Typeface2(Typeface.DEFAULT_BOLD,"{B}")

برا این کد typeface این ارور رو میده: object converted to string

 اینم راهنمایی کنید دیگه کامل یادش میگیرم بقیه متد هاش رو بلد بودم، بازم ممنون:53:

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

در 3 ساعت قبل، حمید حمید گفته است :

مرسی یاد گرفتم چطوری میشه رنگی کرد اما میخواستم سایز رو اضافه کنم نتونستم هیچ ویژگی هم نداشت به نام textsize از این استفاده کردم اینم نشد


Dim rs As RichString
	rs.Initialize(lbl.Text)
	rs.RelativeSize2(24.0,"{B}")
	lbl.Text =rs

برای بولد  کردن هم این کد رو نوشتم بازم نشد


rs.Typeface2(Typeface.DEFAULT_BOLD,"{B}")

برا این کد typeface این ارور رو میده: object converted to string

 اینم راهنمایی کنید دیگه کامل یادش میگیرم بقیه متد هاش رو بلد بودم، بازم ممنون:53:

سلام

بولد کردن:

rc.Style2(Typeface.STYLE_BOLD,"{B}")

تغیر سایزتون کدش درسته اما نمیدونم شاید من بلد نباشم تا جایی میدونم و تست کردم شما فقط میتونید از یک تگ یکاری انجام بدید. مثلا نمیشه با یک تگ {B} هم رنگش رو عوض کرد هم فونت ش رو برای اینکار باید از چندتا تگ استفاده کنید.

مثال:

متن دیتابیس

{C}{B}Title{B}{C}
this is test content for B4A

کد:

rc.RelativeSize2(2.0,"{B}").Color2(Colors.Green,"{C}")

 

ویرایش: دقت کنید اول باید از تگ کوچکتر استفاده کنید بعد تگ بزرگتر... الان ما از {B} استفاده کردیم که کچکتره و بعد {F} 

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

در 4 ساعت قبل، Mr.Kafiri گفته است :

سلام

بولد کردن:


rc.Style2(Typeface.STYLE_BOLD,"{B}")

تغیر سایزتون کدش درسته اما نمیدونم شاید من بلد نباشم تا جایی میدونم و تست کردم شما فقط میتونید از یک تگ یکاری انجام بدید. مثلا نمیشه با یک تگ {B} هم رنگش رو عوض کرد هم فونت ش رو برای اینکار باید از چندتا تگ استفاده کنید.

مثال:

متن دیتابیس


{C}{B}Title{B}{C}
this is test content for B4A

کد:


rc.RelativeSize2(2.0,"{B}").Color2(Colors.Green,"{C}")

 

ویرایش: دقت کنید اول باید از تگ کوچکتر استفاده کنید بعد تگ بزرگتر... الان ما از {B} استفاده کردیم که کچکتره و بعد {F} 

دمت گرم، اکی شد مرسی:53:

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

بایگانی شده

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

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

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