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

لیست علاقه مندی توی مولتی پنل


fileman

سوال

سلام.

یه سوال داشتم جون من کمکم کنید:*solh*:$*give_rose*

برای ایجاد لیست علاقه مندی برای کتابی که با مولتی پنل ساخته شده ، چطور میشه روی هر آیتمی که کلیک شد، فقط همون آیتم توی دیتابیس ،ستون fav اش از 0 بشه 1؟

کدی که من نوشتم:

sql1.ExecNonQuery("update sec1 set fav = 1 where id ="&cur1.GetInt("id"))

اما مشکلش اینه که هر کدوم رو کلیک کنم همگی ستون fav شون از 0 میشه 1

ممنون میشم جواب بدین.*monkey**wall*

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

  • پاسخ ها 41
  • ایجاد شده
  • آخرین پاسخ

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

الان دیگه خطا نمیده فقط وقتی دیتابیس را با Navicat for SQLite باز میکنم همه ستون fav همون 0 مونده؟!!!!!!!

مگه نباید توی دیتابیس تغییر کنه!!!!!!!!!!!!!

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


Activity.LoadLayout("ScrollView")

If File.Exists(File.DirInternal,"dbbook.db")= False Then

File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")

End If

If sql1.IsInitialized=False Then

sql1.Initialize(File.DirInternal,"dbbook.db",False)

End If

cur=sql1.ExecQuery("SELECT * FROM Tbl1 WHERE Fav="&1)

For i = 0 To cur.RowCount-1

cur.Position=i

Dim p As Panel

p.Initialize("p")

ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)

stop = stop + 24%y

p.LoadLayout("Main")

Label1.Text = cur.GetString("Matn")

imgfav.Tag = cur.Getint("id")

Panel1.tag=cur.GetInt("id")

ScrollView1.Panel.Height = stop

Next

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

این کد رو امتحان کنید...

Activity.LoadLayout("ScrollView")
    If File.Exists(File.DirInternal,"dbbook.db")= False Then
    File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
    End If
sql1.Initialize(File.DirInternal,"dbbook.db",True)
Cur = sql1.ExecQuery("SELECT * FROM Tbl1 WHERE fav = 1")
or i = 0 To cur.RowCount-1
    cur.Position=i
    Dim p As Panel
    p.Initialize("p")
    ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
    stop = stop + 24%y
    p.LoadLayout("Main")
    Label1.Text = cur.GetString("Matn")
    imgfav.Tag = cur.Getint("id")
    Panel1.tag=cur.GetInt("id")
    ScrollView1.Panel.Height = stop
    Next
لینک ارسال
به اشتراک گذاری در سایت های دیگر

خطا میده

B4A version 4.30
Parsing code.                           Error
Error parsing program.
Error description: Missing Keyword: end sub
Occurred on line: 40
   next

کد خودم مشکل کجاست؟؟

چیکار کنم همزمان که به لیست اضافه میشه آیکونش تغییر کنه به آیکون مورد نظرم؟

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

نتانتان نتا

 

end sub یادتون رفته آخر کد...

زدم ولی باز همین خطا را میده

Sub Activity_Create(FirstTime As Boolean)
'Activity.LoadLayout("ScrollView")
'	If File.Exists(File.DirInternal,"dbbook.db")= False Then
'	File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
'	End If
'	If SQL1.IsInitialized=False Then
'	SQL1.Initialize(File.DirInternal,"dbbook.db",False)
'	End If
'	cur=SQL1.ExecQuery("SELECT * FROM Tbl1 WHERE Fasl="&1)
'	For i = 0 To cur.RowCount-1
'	cur.Position=i
'	Dim p As Panel
'	p.Initialize("p")
'	ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
'	stop = stop + 24%y
'	p.LoadLayout("Main")
'	Label1.Text = cur.GetString("Matn")
'	imgfav.Tag = cur.Getint("id")
'	Panel1.tag=cur.GetInt("id")
'	ScrollView1.Panel.Height = stop
'	Next
Activity.LoadLayout("ScrollView")
    If File.Exists(File.DirInternal,"dbbook.db")= False Then
    File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
    End If
SQL1.Initialize(File.DirInternal,"dbbook.db",True)
cur = SQL1.ExecQuery("SELECT * FROM Tbl1 WHERE fav = 1")
OR i = 0 To cur.RowCount-1
    cur.Position=i
    Dim p As Panel
    p.Initialize("p")
    ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
    stop = stop + 24%y
    p.LoadLayout("Main")
    Label1.Text = cur.GetString("Matn")
    imgfav.Tag = cur.Getint("id")
    Panel1.tag=cur.GetInt("id")
    ScrollView1.Panel.Height = stop
    Next
	End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

من اومدم عکس هم براش تعریف کردم مثلا اگه جز علاقه مندی بود این آیکن اگه نبود این آیکن ولی اگه یکبار از برنامه خارج بشم دوباره بیام داخل برنامه جز علاقه مندی هستش فقط آیکنش برگشته به حالت پیش فرض که جز علاقه مندی نیست؟!!!!!!!!!

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

خب دوست عزیز باید تو اکتیویتی کریت علاقمندی هم بزنی که اگه جز علاقمندی ها بود یعنی fav =1 بود این ایکون و اگر هم نبو fav=0 اون ایکون همین...

چیز سختی نیست...

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

حالا برای ارسال متن چه کنم.

اگه مثل علاقه مندی توضیح بدبی که فوق العاده است؟!*hoho*

ممنون

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

این کار را انجام دادم الان مشکلی که دارم اینه توی لیست علاقه مندی یکی اینکه آیکن ها میخوام وقتی دیگه جز لیست علاقه مندی هستند آیکنشون آیکون علاقه مندی باشه و اینکه توی لیست اصلیم وقتی روی یکی از آیتم ها کلیک میکنم میاد جز علاقه مندی ولی آیکن اگه دکمه بک بزنم دوباره برگم به لیست آیکن میره به حالت پیش فرض

 

و اینکه در اکتیویتی علاقه مندی وقتی روی ایکن یه مطلب که قبلا آوردمش جز علاقهمندی کلیک میکنم مطلب پاینیش از لیست علاقه مندی خارج میشه!!!!!!!!!

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

حالا برای ارسال متن چه کنم.

اگه مثل علاقه مندی توضیح بدبی که فوق العاده است؟!*hoho*

ممنون

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

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

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

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

کد مربوط به اکتیویتی fav

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: False
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
	Dim sql1 As SQL
End Sub

Sub Globals
	'These global variables will be redeclared each time the activity is created.
	'These variables can only be accessed from this module.
	
	Dim cur As Cursor
	Dim stop As Int = 3%y
	Private ScrollView1 As ScrollView
	Private Label1 As Label
	Private imgshare As ImageView
	Private imgfav As ImageView
	Private Panel1 As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("ScrollView")
	
	If File.Exists(File.DirInternal,"dbbook.db")= False Then
	File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
	End If
	If sql1.IsInitialized=False Then
	sql1.Initialize(File.DirInternal,"dbbook.db",False)
	End If
	cur=sql1.ExecQuery("SELECT * FROM Tbl1 WHERE Fav="&1)

	For i = 0 To cur.RowCount-1
	cur.Position=i
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
	stop = stop + 24%y
	p.LoadLayout("Main")
	Label1.Text = cur.GetString("Matn")
	imgfav.Tag = cur.Getint("id")
	Panel1.tag=cur.GetInt("id")
	ScrollView1.Panel.Height = stop
	Next

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub
Sub imgfav_Click
	Dim imgfav As ImageView
	imgfav = Sender
	
	Dim cursor2 As Cursor
	cursor2 = sql1.ExecQuery("SELECT * FROM Tbl1")
	cursor2.Position = imgfav.Tag - 1
	
	Dim check As Int
	check = cursor2.GetInt("Fav")
	
	If check = 1 Then
	
    sql1.ExecNonQuery("UPDATE Tbl1 SET Fav = 0 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"nofav.png")
	ToastMessageShow("از لیست برگزیده ها حذف شد",False)
	Panel1.RemoveView
	ScrollView1.Panel.AddView(Panel1,0,stop,100%x,100%y)
	End If
	cursor2.Close
End Sub


Sub ScrollView1_ScrollChanged(Position As Int)
	
End Sub

این لیست اکتیویتی مربوط به آیتم های پنل

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: False
#End Region

Sub Process_Globals
	Dim SQL1 As SQL
	
End Sub

Sub Globals
	Private Panel1 As Panel
	Private Label1 As Label
	Private imgshare As ImageView
	Private imgfav As ImageView
	Dim cur As Cursor
	Dim stop As Int = 4%y
	Private ScrollView1 As ScrollView
End Sub

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("ScrollView")
	If File.Exists(File.DirInternal,"dbbook.db")= False Then
	File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
	End If
	If SQL1.IsInitialized=False Then
	SQL1.Initialize(File.DirInternal,"dbbook.db",False)
	End If
	cur=SQL1.ExecQuery("SELECT * FROM Tbl1 WHERE Fasl="&1)
	For i = 0 To cur.RowCount-1
	cur.Position=i
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
	stop = stop + 25%y
	p.LoadLayout("Main")
	Label1.Text = cur.GetString("Matn")
	imgfav.Tag = cur.Getint("id")
	Panel1.tag=cur.GetInt("id")
	ScrollView1.Panel.Height = stop
	Next

	End Sub


Sub Activity_Resume

End Sub
Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub imffav_LongClick
	
End Sub
Sub imgshare_LongClick
	
End Sub
Sub Panel1_Click

End Sub
Sub imgfav_Click
	Dim imgfav As ImageView
	imgfav = Sender
	
	Dim cursor2 As Cursor
	cursor2 = SQL1.ExecQuery("SELECT * FROM Tbl1")
	cursor2.Position = imgfav.Tag - 1
	
	Dim check As Int
	check = cursor2.GetInt("Fav")
	
	If check = 1 Then
	
    SQL1.ExecNonQuery("UPDATE Tbl1 SET Fav = 0 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"nofav.png")
	ToastMessageShow("از لیست برگزیده ها حذف شد",False)

	Else
    
    SQL1.ExecNonQuery("UPDATE Tbl1 SET Fav = 1 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"fav.png")
    ToastMessageShow("به لیست برگزیده ها اضافه شد",False)
	
	End If
	cursor2.Close
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

شما بیا این کدها رو بنویس...

 

اکتیویتی آیتم های پنل

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: False
#End Region

Sub Process_Globals
	Dim SQL1 As SQL
	
End Sub

Sub Globals
	Private Panel1 As Panel
	Private Label1 As Label
	Private imgshare As ImageView
	Private imgfav As ImageView
	Dim cur As Cursor
	Dim stop As Int = 4%y
	Private ScrollView1 As ScrollView
End Sub

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("ScrollView")
	If File.Exists(File.DirInternal,"dbbook.db")= False Then
	File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
	End If
	If SQL1.IsInitialized=False Then
	SQL1.Initialize(File.DirInternal,"dbbook.db",False)
	End If
	cur=SQL1.ExecQuery("SELECT * FROM Tbl1 WHERE Fasl="&1)
	For i = 0 To cur.RowCount-1
	cur.Position=i
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
	stop = stop + 25%y
	p.LoadLayout("Main")
	Label1.Text = cur.GetString("Matn")
	imgfav.Tag = cur.Getint("id")
	Panel1.tag=cur.GetInt("id")
	ScrollView1.Panel.Height = stop
	Next

	Dim check As Int
    check = cur.Getint("fav")
    If check = 1 Then
	imgfav.Bitmap = LoadBitmap(File.DirAssets,"عکس مربوط به اضافه شدن علاقمندی")
	Else
	imgfav.Bitmap = LoadBitmap(File.DirAssets,"عکس مربوط به حذف شدن از علاقمندی")
	End If

	End Sub


Sub Activity_Resume

End Sub
Sub Activity_Pause (UserClosed As Boolean)

End Sub

Sub imffav_LongClick
	
End Sub
Sub imgshare_LongClick
	
End Sub
Sub Panel1_Click

End Sub
Sub imgfav_Click
	Dim imgfav As ImageView
	imgfav = Sender
	
	Dim cursor2 As Cursor
	cursor2 = SQL1.ExecQuery("SELECT * FROM Tbl1")
	cursor2.Position = imgfav.Tag - 1
	
	Dim check As Int
	check = cursor2.GetInt("Fav")
	
	If check = 1 Then
	
    SQL1.ExecNonQuery("UPDATE Tbl1 SET Fav = 0 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"nofav.png")
	ToastMessageShow("از لیست برگزیده ها حذف شد",False)

	Else
    
    SQL1.ExecNonQuery("UPDATE Tbl1 SET Fav = 1 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"fav.png")
    ToastMessageShow("به لیست برگزیده ها اضافه شد",False)
	
	End If
	cursor2.Close
End Sub

اکتیویتی fav

#Region  Activity Attributes 
	#FullScreen: False
	#IncludeTitle: False
#End Region

Sub Process_Globals
	'These global variables will be declared once when the application starts.
	'These variables can be accessed from all modules.
	Dim sql1 As SQL
End Sub

Sub Globals
	'These global variables will be redeclared each time the activity is created.
	'These variables can only be accessed from this module.
	
	Dim cur As Cursor
	Dim stop As Int = 3%y
	Private ScrollView1 As ScrollView
	Private Label1 As Label
	Private imgshare As ImageView
	Private imgfav As ImageView
	Private Panel1 As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("ScrollView")
	
	If File.Exists(File.DirInternal,"dbbook.db")= False Then
	File.Copy(File.DirAssets,"dbbook.db",File.DirInternal,"dbbook.db")
	End If
	If sql1.IsInitialized=False Then
	sql1.Initialize(File.DirInternal,"dbbook.db",False)
	End If
	cur=sql1.ExecQuery("SELECT * FROM Tbl1 WHERE Fav="&1)

	For i = 0 To cur.RowCount-1
	cur.Position=i
	Dim p As Panel
	p.Initialize("p")
	ScrollView1.Panel.AddView(p,0,stop,100%x,100%y)
	stop = stop + 24%y
	p.LoadLayout("Main")
	Label1.Text = cur.GetString("Matn")
	imgfav.Tag = cur.Getint("id")
	Panel1.tag=cur.GetInt("id")
	ScrollView1.Panel.Height = stop
	Next

dim check As Int
check = cur.Getint("fav")
If check = 1 Then
    imgfav.Bitmap = LoadBitmap(File.DirAssets,"عکس مربوط به اضافه شدن علاقمندی")
    Else
    imgfav.Bitmap = LoadBitmap(File.DirAssets,"عکس مربوط به حذف شدن از علاقمندی")
    End If

End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause (UserClosed As Boolean)

End Sub
Sub imgfav_Click
	Dim imgfav As ImageView
	imgfav = Sender
	
	Dim cursor2 As Cursor
	cursor2 = sql1.ExecQuery("SELECT * FROM Tbl1")
	cursor2.Position = imgfav.Tag - 1
	
	Dim check As Int
	check = cursor2.GetInt("Fav")
	
	If check = 1 Then
	
    sql1.ExecNonQuery("UPDATE Tbl1 SET Fav = 0 WHERE id = "&cursor2.GetInt("id"))
	imgfav.Bitmap=LoadBitmap(File.DirAssets,"nofav.png")
	ToastMessageShow("از لیست برگزیده ها حذف شد",False)
	Panel1.RemoveView
	ScrollView1.Panel.AddView(Panel1,0,stop,100%x,100%y)
	End If
	cursor2.Close
End Sub


Sub ScrollView1_ScrollChanged(Position As Int)
	
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

شرط چک کردن را آوردم توی حلقه for الان درست شد :D

 

فقط توی پنل fav مثلا روی پنل اولی کلیک میکنم پنل آخری از لیست خارج میشه ؟؟؟؟؟ مشکل این از کجاست اساتید راهنمایی کنید لطفا؟!!!!

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

بایگانی شده

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

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

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

×
×
  • اضافه کردن...