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

دسته بندی اطلاعات دیتابیس


amiro72

سوال

سلا من به یه مشکلی بر خوردم اگه میشه کمک کنید  

 

خب بریم سر مشکلم 

من به دیتابیس دارم  عکس پیوست

 

http://8pic.ir/images/nbj93i485gnbi8ectb5o.jpg

 

 

حالا اومدم یه لیست ویو گذاشتم و گفتم که  کد زیر


	If File.Exists(File.DirInternal,"amozesh.db")=False Then
	File.Copy(File.DirAssets,"amozesh.db",File.DirInternal,"amozesh.db")
	End If
	

	If sql1.IsInitialized = False Then
	sql1.Initialize(File.DirInternal,"amozesh.db",False)
	End If
	

		
		cur1 =sql1.ExecQuery("SELECT * FROM amozesh1")
			
		For i=0 To cur1.RowCount-1
			cur1.Position =i
                        ListView1.AddSingleLine2(cur1.GetString("onvan"),cur1.GetInt("daste"))
		Next
	

و بعد اومد طبق کد زیر ساب کلیک لیست ویو رو گفتم 

Sub ListView1_ItemClick (Position As Int, Value As Object)
daste = Value
StartActivity(amozeshmatn)
End Sub

 حالا میریم اکتیویتی بعدی 


				If File.Exists(File.DirInternal,"amozesh.db")=False Then
				File.Copy(File.DirAssets,"amozesh.db",File.DirInternal,"amozesh.db")
				End If
''
						If sql1.IsInitialized = False Then
							sql1.Initialize(File.DirInternal,"amozesh.db",False)
						End If

cur2=amozeshm.sql1.ExecQuery("SELECT * FROM amozesh1 WHERE daste ="&amozeshm.daste)
		cur2.Position=0
              show

 amozeshm همون اکتیویتی قبلیه 

 

و حالا  کد های show


Sub show
'	cur=amozeshm.sql1.ExecQuery("SELECT * FROM amozesh1")
	cur = sql1.ExecQuery("SELECT * FROM amozesh1  WHERE daste")
	Dim h As Int = 2%y
	For i = 0 To cur.RowCount - 1
		cur.Position = i
		If cur.GetInt("noy") = 0 Then
			Dim lbl As Label
			lbl.Initialize("")
			lbl.Textcolor = Colors.Red
			lbl.Textsize = 25
			Dim f As Typeface
			f = Typeface.LoadFromAssets("5.ttf")
			lbl.Typeface=f
			lbl.Gravity=Gravity.CENTER
			lbl.Text = cur.GetString("textpic")
			ScrollView1.Panel.AddView(lbl,0%x,h,ScrollView1.Width-5,100%y)
			Dim su As StringUtils
			lbl.Height = su.MeasureMultilineTextHeight(lbl,lbl.Text)
			h = h + lbl.Height + 2%y
			
			
			ScrollView1.Panel.height = h
		Else If cur.GetInt("noy") = 1 Then
			Dim image1 As ImageView
			image1.Initialize("")
'			image1.Bitmap = pic(i,"name")
			image1.SetBackgroundImage(LoadBitmap(File.DirAssets,cur.GetString("textpic")))
			image1.Gravity = Gravity.FILL
			Dim be As BitmapExtended
			be.Initialize("")
			ScrollView1.Panel.addview(image1,0,h,ScrollView1.Width,50%y)
			h = h + be.getHeight(image1.Bitmap) + 40%y
			ScrollView1.Panel.Height = h
			
		End If
	Next
	ScrollView1.Panel.Height=ScrollView1.Panel.Height+10%y
End Sub

تموم اینا درسته مشکلی نیست ولی من میخام مثلا وقتی روی عنوان اول  از لیست ویو زدن  دسته ای که یک هست بیاد و عکس و مطالبش رو نشون بده و اگه عنوان دو رو زد بیاد عکس و متن دسته 2 زو نشون بده 

اینجوری میخام اما نمیدونم چیکا  کنم 

ممنون میشم جواب بدید 

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

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

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

اومدم یه کاری کردم توی دیتابیس یه  تیبل دیگه  ساختم واسه عنوان ودسته حالا عنوانا رو میدم و جلوش شماره دسته رو هم میزنم  و توی اکتیویتی محتوا همون عنوان رو میاره  حل شد 

 

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

:give_rose:   :malih:  من در مقابل بقیه دوستان که از روز اول راه اندازی انجمن تا حالا زحمت کشیدن یه قطره کوچیکم 

موفق و موید باشی هموطن

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

اولا متغیر sql رو تو همون اکتیویتی که هستین تعریف اینشیالایز و استفاده کنید مثلا کد زیر

amozeshm.sql1.ExecQuery

این اشتباهه شما وقتی توی یه اکتیویتی متغیر sql تعریف کردین همه کوئریهاتون رو میتونین با اون انجام بدین

 

دویوم: کار راحتیه عزیزفرض کنیم دوتا اکتیویتی داری اولی amoozesh و مثلا دومیه mohtava تو اکتیویتیmohtava یه متغیر سراسری از نوع اینتجر مثلا daste تعریف کن توی متد زیر مقداردهیش کن

Sub ListView1_ItemClick (Position As Int, Value As Object)
mohtava.daste = Value
StartActivity(mohtava)
End Sub

حالا تو اکتیویتی mohtava بیا اون رکورد هایی که دسته هاشون با daste برابره رو بگیر

cur = sql1.ExecQuery("SELECT * FROM amozesh1  WHERE daste="&daste)

بقیشم همون متد show خودتون میشه

 

واقعا ممنونم اره درست شد 

 

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

 

ولی عنوان های من متفاوته و میخام  هر هنوان برای خودش یه دسته جدا داشته باشه  الان اگه ببینید روی عنوان اولی و دومی وسومی کلیک بشه  سه تاش دسته یک رو میارن ولی من میخام هر کدوم یه دسته جداداشته باشه  

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

واقعا ممنونم اره درست شد 

 

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

 

ولی عنوان های من متفاوته و میخام  هر هنوان برای خودش یه دسته جدا داشته باشه  الان اگه ببینید روی عنوان اولی و دومی وسومی کلیک بشه  سه تاش دسته یک رو میارن ولی من میخام هر کدوم یه دسته جداداشته باشه  

خو دسته های متفاوت واسه هر کدوم بدین دیگه دست خودتونه که

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

خو دسته های متفاوت واسه هر کدوم بدین دیگه دست خودتونه که

 

 

 

اومدم یه کاری کردم توی دیتابیس یه  تیبل دیگه  ساختم واسه عنوان ودسته حالا عنوانا رو میدم و جلوش شماره دسته رو هم میزنم  و توی اکتیویتی محتوا همون عنوان رو میاره  حل شد 

 

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

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

اولا متغیر sql رو تو همون اکتیویتی که هستین تعریف اینشیالایز و استفاده کنید مثلا کد زیر

amozeshm.sql1.ExecQuery

این اشتباهه شما وقتی توی یه اکتیویتی متغیر sql تعریف کردین همه کوئریهاتون رو میتونین با اون انجام بدین

 

دویوم: کار راحتیه عزیزفرض کنیم دوتا اکتیویتی داری اولی amoozesh و مثلا دومیه mohtava تو اکتیویتیmohtava یه متغیر سراسری از نوع اینتجر مثلا daste تعریف کن توی متد زیر مقداردهیش کن

Sub ListView1_ItemClick (Position As Int, Value As Object)
mohtava.daste = Value
StartActivity(mohtava)
End Sub

حالا تو اکتیویتی mohtava بیا اون رکورد هایی که دسته هاشون با daste برابره رو بگیر

cur = sql1.ExecQuery("SELECT * FROM amozesh1  WHERE daste="&daste)

بقیشم همون متد show خودتون میشه

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

بایگانی شده

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

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

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