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

پاسخ ها ( 2 )
سلام
لیست ویو نهایتا دو خطی هست، در سایت b4a کتابخانه ای وجود داره به نام CustomListView که توسط این کتابخانه میتونید لیست ویو چند خطی بسازید، ولی برای دانلود کتابخانه می بایست عضو ویژه سایت باشید.
شما بجای اینکه از لیست ویو استفاده کنید، از مولتی پنل برای نمایش استفاده کنید.
موفق باشید.
وقتی از مولتی پنل استفاده میکنم توی بخش کلیکش مشکل دارم یعنی با
میتونم تشخیص بدم که کدوم گزینه کلیک شده اما عملیات مربوط به اون درست انجام نمیده
این کد مربوط یه ساب اکتیویتی هست
Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("main") File.Copy(File.DirAssets,"sudent.db",File.DirInternal,"sudent.db") If SQL1.IsInitialized = False Then SQL1.Initialize(File.DirInternal, "sudent.db", False) End If cursor1 = SQL1.ExecQuery("SELECT * FROM tblstudent ") For i = 0 To cursor1.RowCount-1 cursor1.Position=i Dim p As Panel p.Initialize("") ScrollView1.Panel.AddView(p,3%x,top,94%x,80dip) p.LoadLayout("basicapp") Label2.Text = cursor1.GetString("sname") Log(cursor1.GetString("sfamily")) top = top + 80dip + 3%X Panel1.Tag = cursor1.GetString("sname") Next ScrollView1.Panel.Height = top End Subمن میخوام که مشخصات دانش آموز را از دیتابیس بگیرم و بر حسب نام دانش آموز که از ساب اکتیویتی به ساب Sub Panel1_Click میفرسته نمره و سایر مشخصات رو توی لیبل نشون بدم
Sub Panel1_Click Dim p As Panel = Sender ToastMessageShow("گزینه "&p.Tag&" کلیک شد !",False) nomre(p.Tag) End Subو اینم کد مربوط به ساب نمره بر حسب نام دریافتی
Sub nomre(name As String) Dim condit As String condit="WHERE sname LIKE '%"&name&"%'" cursor1 = SQL1.ExecQuery("SELECT * FROM tblstudent "&condit) For i = 0 To cursor1.RowCount-1 cursor1.Position=i Dim p As Panel p.Initialize("") p.LoadLayout("basicapp") Label2.Text = cursor1.GetString("sage") Log(cursor1.GetString("sgrade")) top = top + 80dip + 3%X Next ScrollView1.Panel.Height = top End Subو در پایان تمام کد برنامه
Sub Process_Globals Dim SQL1 As SQL End Sub Sub Globals Private ScrollView1 As ScrollView Dim top As Int = 3%x Private Label2 As Label Private Panel1 As Panel Dim cursor1 As Cursor End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("main") File.Copy(File.DirAssets,"sudent.db",File.DirInternal,"sudent.db") If SQL1.IsInitialized = False Then SQL1.Initialize(File.DirInternal, "sudent.db", False) End If cursor1 = SQL1.ExecQuery("SELECT * FROM tblstudent ") For i = 0 To cursor1.RowCount-1 cursor1.Position=i Dim p As Panel p.Initialize("") ScrollView1.Panel.AddView(p,3%x,top,94%x,80dip) p.LoadLayout("basicapp") Label2.Text = cursor1.GetString("sname") Log(cursor1.GetString("sfamily")) top = top + 80dip + 3%X Panel1.Tag = cursor1.GetString("sname") Next ScrollView1.Panel.Height = top End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub Panel1_Click Dim p As Panel = Sender ToastMessageShow("گزینه "&p.Tag&" کلیک شد !",False) nomre(p.Tag) End Sub Sub nomre(name As String) Dim condit As String condit="WHERE sname LIKE '%"&name&"%'" cursor1 = SQL1.ExecQuery("SELECT * FROM tblstudent "&condit) For i = 0 To cursor1.RowCount-1 cursor1.Position=i Dim p As Panel p.Initialize("") p.LoadLayout("basicapp") Label2.Text = cursor1.GetString("sage") Log(cursor1.GetString("sgrade")) top = top + 80dip + 3%X Next ScrollView1.Panel.Height = top End Sub