من یه برنامه پیامکی کار کردم که میاد متن رو بصورت پنج تا پنج تا ازدیتابیسم میخونه و نشون میده. ولی مشکلاتی که برام پیش اومده اینه که شماره ای که بالای متن های
پیامکیم گذاشتم بهم میریزه و وقتی پنج متن دوم رو از دیتابیس خوند بجای اینکه از شش شماره گذاری کنه دوباره از یک شماره میزنه و این باعث شده وقتی بخوام متنی رو کپی
کنم و باوتون کپی و یا اشتراک رو بزنم یه متن دیگه کپی بشه. علاوه بر این متن پنجمم تو هر بار دریافت فونتش بزرگتر میشه... از دوستان کسی میتونه بهم کمک کنه و یه
نگاهی به سورسم بندازه؟؟؟ بخدا ثواب داره *sarcastic* *rofl*
تو تصاویر پیوستی ایراد برنامم کاملا مشخصه... با رنگ قرمز مشخص کردم
#Region Activity Attributes
#FullScreen: True
#IncludeTitle: False
#End Region
Sub Process_Globals
Dim SQL1 As SQL
Dim cursur1,Other As Cursor
End Sub
Sub Globals
Dim TenRecordPlus As String = "5"
'Dim Top As Int = 1%y
Private Panel1 As Panel
Private Label1 As Label
Private btnnumber As Button
Private ScrollView1 As ScrollView
Private Button1 As Button
Private Label5 As Label
Dim myfont As Typeface
Dim text As String
Dim ht As Float
Dim StrUtil As StringUtils
Dim PanelHeight As Int
Private btcopy As Button
Private btshare As Button
End Sub
Sub Activity_Create(FirstTime As Boolean)
If FirstTime Then
If File.Exists(File.DirInternal,"bank.db")=False Then
File.copy(File.DirAssets,"bank.db",File.DirInternal,"bank.db")
End If
SQL1.Initialize(File.DirInternal,"bank.db",True)
cursur1 = SQL1.ExecQuery2("SELECT g1 FROM banktb ORDER BY ID LIMIT ?",Array As String(5))
myfont = Typeface.LoadFromAssets("byekan.ttf")
Activity.LoadLayout("sv")
For i=0 To cursur1.RowCount-1
cursur1.Position=i
text= cursur1.GetString("g1")
ScrollView1.Panel.Color = Colors.Transparent
Dim p1 As Panel
p1.Initialize("")
p1.LoadLayout("main")
ScrollView1.Panel.AddView(p1,0,PanelHeight,100%x,100dip)
btshare.Tag = i
btcopy.Tag = i
btnnumber.text = i + 1
btnnumber.Typeface=Typeface.LoadFromAssets("dastnevis.ttf")
btnnumber.TextColor=Colors.yellow
btnnumber.Textsize=15
ht=art(text,Label1,myfont,20)
Label1.TextColor=Colors.white
p1.Height=ht+70dip
PanelHeight=PanelHeight+ht+70dip
Next
cursur1.Close
ScrollView1.Panel.Height=PanelHeight
Label5.text="رشحات الانس"
Label5.Typeface=Typeface.LoadFromAssets("dastnevis.ttf")
Label1.TextSize=25
End If
End Sub
Sub ScrollView1_ScrollChanged(Position As Int)
Other = SQL1.ExecQuery2("SELECT g1 FROM banktb OFFSET LIMIT ?,?",Array As String(TenRecordPlus,5))
If ScrollView1.ScrollPosition + ScrollView1.Height =ScrollView1.Panel.Height Then
myfont = Typeface.LoadFromAssets("byekan.ttf")
For i=0 To Other.RowCount-1
Other.Position=i
text= Other.GetString("g1")
ScrollView1.Panel.Color = Colors.Transparent
Dim p1 As Panel
p1.Initialize("")
p1.LoadLayout("main")
ScrollView1.Panel.AddView(p1,0,PanelHeight,100%x,100dip)
btshare.Tag =i
btcopy.Tag = i
btnnumber.text = i + 1
btnnumber.Typeface=Typeface.LoadFromAssets("dastnevis.ttf")
btnnumber.TextColor=Colors.yellow
btnnumber.Textsize=15
ht=art(text,Label1,myfont,20)
Label1.TextColor=Colors.white
p1.Height=ht+70dip
PanelHeight=PanelHeight+ht+70dip
Next
Other.Close
ScrollView1.Panel.Height=PanelHeight
Label5.text="رشحات الانس"
Label5.Typeface=Typeface.LoadFromAssets("dastnevis.ttf")
Label1.TextSize=25
DoEvents
If IsNumber(TenRecordPlus) = True Then
TenRecordPlus = TenRecordPlus + 5
End If
End If
End Sub
Sub Button1_Click
StartActivity(Main)
Activity.Finish
End Sub
Sub art(txt As String,leb As Label,font As Typeface,size As Int) As Float
Dim before,after As Float
Dim Obj1 As Reflector
leb.text=txt
leb.TextSize=size
leb.Gravity=Gravity.CENTER
leb.Left=leb.Left
leb.Typeface=font
ht = StrUtil.MeasureMultilineTextHeight(leb , txt)
Obj1.Target = leb
before = Obj1.RunMethod("getLineHeight") 'Get the height of line BEFORE you change it
Obj1.Target = leb
Obj1.RunMethod3("setLineSpacing", .10, "java.lang.float", 1.5, "java.lang.float") 'Change the space between lines
Obj1.Target = leb
after = Obj1.RunMethod("getLineHeight") 'Get the height of line AFTER you change it
ht = ((after * ht)/before)
leb.Height = ht
Return ht
End Sub
Sub btshare_click
Dim cursor3 As Cursor
cursor3 = SQL1.ExecQuery("SELECT g1 FROM banktb")
Dim btn2 As Button
btn2=Sender
cursor3.Position =btn2.Tag
Dim matnsms As Label
matnsms.Initialize("")
matnsms.text=cursor3.GetString("g1")
cursor3.Close
Dim share As Intent
share.Initialize(share.ACTION_SEND,"")
share.SetType("text/plain")
share.PutExtra("android.intent.extra.TEXT", matnsms.text)
share.WrapAsIntentChooser("متن خود را به اشتراک بگذارید....")
StartActivity(share)
End Sub
Sub btcopy_click
Dim something As BClipboard
Dim cursor2 As Cursor
cursor2 = SQL1.ExecQuery("SELECT g1 FROM banktb")
Dim btn2 As Button
btn2=Sender
cursor2.Position =btn2.Tag
something.clrText
something.settext(cursor2.GetString("g1"))
ToastMessageShow("متن در کلیپ بورد کپی شد",False)
cursor2.Close
End Sub
سوال
marshal 71
سلام بر دوستان
من یه برنامه پیامکی کار کردم که میاد متن رو بصورت پنج تا پنج تا ازدیتابیسم میخونه و نشون میده. ولی مشکلاتی که برام پیش اومده اینه که شماره ای که بالای متن های
پیامکیم گذاشتم بهم میریزه و وقتی پنج متن دوم رو از دیتابیس خوند بجای اینکه از شش شماره گذاری کنه دوباره از یک شماره میزنه و این باعث شده وقتی بخوام متنی رو کپی
کنم و باوتون کپی و یا اشتراک رو بزنم یه متن دیگه کپی بشه. علاوه بر این متن پنجمم تو هر بار دریافت فونتش بزرگتر میشه... از دوستان کسی میتونه بهم کمک کنه و یه
نگاهی به سورسم بندازه؟؟؟ بخدا ثواب داره *sarcastic* *rofl*
تو تصاویر پیوستی ایراد برنامم کاملا مشخصه... با رنگ قرمز مشخص کردم
لینک ارسال
به اشتراک گذاری در سایت های دیگر
5 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.