هایلایت کردن متن موقع سرچ (کاربردی) در B4A

با سلام و سپاس خدمت کاربران عزیز سایت یاهو ۹۸

 

امروز براتون سورس کدی کاربردی در زمینه سرچ کردن در نرم افزار مهیا کرده ایم که امیدوارم مورد مفید واقع گردد.

 

خیلی از دوستان، سورسی رو نیاز داشتن که بشه از طریق اون، متن سرچ شده رو رنگی کرد.

من این سورس رو قرار میدم تا همگی از اون استفاده کنن. در این سورس، از اسکرول دادن به لیبل بدون اسکرول ویو هم استفاده شده.

آموزش:

 

برای کار اول از همه این ساب رو به اکتیویتیتون اضاف کنید:

 

Sub highlightTextInString(Text As String, SearchText As String , HighlightColor As Int) As RichString
	Dim RS As RichString
	RS.Initialize(Text)
	
	Dim index As Int = 0
	For i = 0 To Text.Length
		Dim startIndex As Int = Text.ToLowerCase.IndexOf2(SearchText.ToLowerCase , index)
		If startIndex > -1 Then
			Dim endIndex As Int = startIndex + SearchText.Length
			index = endIndex
			RS.BackColor(HighlightColor, startIndex, endIndex)
		Else
			Exit
		End If
	Next
	
	Return RS
End Sub

 

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

 

Label1.Text = highlightTextInString(Text , SearchFOr , HighlightColor)

 

مثلا:

 

Sub EditText1_TextChanged (Old As String, New As String)
	Label1.Text = highlightTextInString(Label1.Text , New , Colors.Yellow)
End Sub

 

به همین سادگی :eynak:

دیدگاهتان را بنویسید