رفتن به مطلب
بیسیک فور ایکس
  • اطلاعیه ها

    • H@mid.RS

      جذب نیرو   پنجشنبه, 10 فروردین 1396

      درود به دوستان عزیز به چند نفر مدیر برای بخش های php و گرافیک نیازمندیم درصورت تمایل درخواست خود را در پیام خصوصی بفرستید  
    • H@mid.RS

      تغییر نام کاربری   دوشنبه, 28 فروردین 1396

      درود دوستانی که نام کاربری انها با ایمل شان یکی بود تغییر کرد مثلا نام کاربری sss@tmail.com به sss تغییر کرد دوستانی که مشکل ورود دارند @ به بعد را پاک کنند
    • H@mid.RS

      کسب درآمد   پنجشنبه, 31 فروردین 1396

      دوستانی که میخواهند با انجمن خودشون همکاری کنند و از محیط انجمن درآمد کسب کنند به بنده پیام خصوصی بفرستند
    • H@mid.RS

      راه اندازی وبلاگ برای انجمن   دوشنبه, 18 اردیبهشت 1396

      درود به همه دوستان عزیز از این پس کاربران ویژه  - همکاران - و مدیران میتوانند در انجمن برای خود وبلاگ بسازند
  • 0
seyyedali

علاقع مندی ها و تغییر عکس آیکنش

سوال

سلام دوستان

من با مولتی پنل 10 تا ایتم رو لود کردم و برای هرکدوم هم یک ایکن قلب هم گداشتم 

مشکلم اینه که وقتی رو قلبه کلیک می کنم نه بع علاقه مندی ها اضافه میشه نه ایکنش تغییر میکنه

Screenshot_2016_10_01_07_52_06.png

 

تو عکس مشخصه

این منو اصلی برنامه هست .

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

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


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

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

Recommended Posts

  • 0

واسه اضافه به علاقه مندی ها که کافی است یه فیلد favo تو دیتا بیس بدارید که 1 ینی علاقه مندی 0 یتی علاقه مندی نه 

اونوقت بگید با کلیک رو هر فیلد اگه صفر بود یک کنه اگه یک بود صفر کنه

و تو بخش علاقه مندی ها هم بگی که فقط اونایی که favo=1  هست رو بیاره

 

واسه تغییر ایکون قلب باید از for each  استفاده کنی و بگی همون ویویی که انتخاب کردی ایکونش عوض شه 

اگه با for each  کار نکنی هر کدوم رو که بزنی فقط آخری عوض میشه

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


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

واسه اضافه به علاقه مندی ها که کافی است یه فیلد favo تو دیتا بیس بدارید که 1 ینی علاقه مندی 0 یتی علاقه مندی نه 

اونوقت بگید با کلیک رو هر فیلد اگه صفر بود یک کنه اگه یک بود صفر کنه

و تو بخش علاقه مندی ها هم بگی که فقط اونایی که favo=1  هست رو بیاره

 

واسه تغییر ایکون قلب باید از for each  استفاده کنی و بگی همون ویویی که انتخاب کردی ایکونش عوض شه 

اگه با for each  کار نکنی هر کدوم رو که بزنی فقط آخری عوض میشه

 

ممنون این for each چجوریه ؟؟؟

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


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

اگر اشتباه نکنم for eachview هست که همون به ازای تعداد ویو ها هست

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


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

ممنون این for each چجوریه ؟؟؟

 

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

 

بیا همه ویو ها رو بررسی کن هر کدومش که که button بود رو بررسی کن اگه همونی بود که ما کلیک کرده بودیم بیا بررسی کنه که علاقه مندی توی دیتا بیس رو اگه 1 هست 0 کنه و اگه 0 هست یک کنه

 

بهتره tag  دکمه رو id  فیلد دیتا بیس قرار بدید

Sub favo_Click

Dim b As Button
b=Sender
	For Each v As View In Activity.GetAllViewsRecursive
		If v Is Button Then

			If v.Tag=b.Tag Then
				تو دیتا بیس چک کن اگه 0 هست 1 کن و اگه 1 هست صفر کن
			End If
		End If
	Next
End Sub

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


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

 

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

 

بیا همه ویو ها رو بررسی کن هر کدومش که که button بود رو بررسی کن اگه همونی بود که ما کلیک کرده بودیم بیا بررسی کنه که علاقه مندی توی دیتا بیس رو اگه 1 هست 0 کنه و اگه 0 هست یک کنه

 

بهتره tag  دکمه رو id  فیلد دیتا بیس قرار بدید

Sub favo_Click

.
.
.
End Sub

 ممنون 

من کد رو به اینشکلنوشتم کجاش مشکل داره

یه نگاهی به کدها بکنید لطفا

Sub Lp_Click
'	
Dim b As Button
b=Sender
	For Each v As View In Activity.GetAllViewsRecursive
		

			If v.Tag=b.Tag Then
				
				If cu.GetInt("fav")=0 Then 
				ToastMessageShow("به مورد علاقه ها اضافه شد",False)
				Lp.SetBackgroundImage(LoadBitmap(File.DirAssets , "favkh1.png" ))
				Main.s.ExecNonQuery("UPDATE codsy SET fav=1 WHERE radif="&b.Tag)
				
				Else If cu.GetInt("fav")=1 Then
				ToastMessageShow("از مورد علاقه ها حذف شد",False)
				Lp.SetBackgroundImage( LoadBitmap(File.DirAssets , "favpor1.png" ))
				Main.s.ExecNonQuery("UPDATE codsy SET fav=1 WHERE radif="&b.Tag)	
				
				End If
'				تو دیتا بیس چک کن اگه 0 هست 1 کن و اگه 1 هست صفر کن
			End If
		
	Next
End Sub

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


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

با فرض اینکه radif  رو tag  کرده باشید و منحصر بفرد باشه

 

کداتون اینجوری میشه

Sub Lp_Click

Dim b As Button
b=Sender
	For Each v As View In Activity.GetAllViewsRecursive
		

			If v.Tag=b.Tag Then
				cu=Main.s.ExecQuery("select fav from codsy  WHERE radif="&b.Tag)
                                cu.position=0
				If cu.GetInt("fav")=0 Then 
				ToastMessageShow("به مورد علاقه ها اضافه شد",False)
				Lp.SetBackgroundImage(LoadBitmap(File.DirAssets , "favkh1.png" ))
				Main.s.ExecNonQuery("UPDATE codsy SET fav=1 WHERE radif="&b.Tag)
				
				Else If cu.GetInt("fav")=1 Then
				ToastMessageShow("از مورد علاقه ها حذف شد",False)
				Lp.SetBackgroundImage( LoadBitmap(File.DirAssets , "favpor1.png" ))
				Main.s.ExecNonQuery("UPDATE codsy SET fav=0 WHERE radif="&b.Tag)	
				
				End If

			End If
		
	Next
End Sub

که دو خط زیر رو من اضاف کردم اول میاد مقدار fav مربوط به radif  مورد نظر رو میخونه بعد شرط رو بررسی میکنه


				cu=Main.s.ExecQuery("select fav from codsy  WHERE radif="&b.Tag)
                                cu.position=0

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


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

 

با فرض اینکه radif  رو tag  کرده باشید و منحصر بفرد باشه

 

کداتون اینجوری میشه


.

.

 

ممنون

این ارور رو داد

نمیدون چیه؟؟

Screenshot_2016_10_04_15_03_01.png

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


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

ممنون

این ارور رو داد

نمیدون چیه؟؟

 

 

این مشکل برا این بود که buttom اشتباه بود lable ش کردم این مشکل رفع شد

 

ارور دیگه ای داد ، دارم رو اون کار میکنم.نتیجه رو میگم خدمتون

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


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

 

...

.

.

 

 

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

طبق عکس اول ، بالای یالا تیتر ها بدون مشکل لود میشن و اما عکسا نه

کداش اینا هست،مشکلی دارن؟؟ دیتابیسم ماژولی هست

For i = 0 To t1.Size -1
'		
	cu.Position = i
	
	Dim p1 As Panel
	p1.Initialize("")
	ScrollView1.Panel.AddView(p1,0%x,h,100%x,50%y)
	p1.LoadLayout("1")
	
	Dim h1 As item
	h1.Initialize
	h1 = t1.Get(i)  	
	
	
'	btn1.Gravity = Gravity.CENTER
'	btn1.Typeface = Typeface.LoadFromAssets("SNAZANIN.TTF")
'	btn1.TextSize = 21

	btn1.Text = h1.chare
	st = h1.chare
	btn1.Tag = i
	
	
	If cu.getint("fav")=0 or h1.fav = 0 Then 
		
		Lp.SetBackgroundImage(LoadBitmap(File.DirAssets,"favkh1.png"))
				Else
				
				Lp.SetBackgroundImage(LoadBitmap(File.DirAssets,"favpor1.png"))
	End If
	
	ScrollView1.Panel.Height=h+ 18%y
	h = h + btn1.Height + 3.5%y
		

Next	

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


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

دلیل استفاده از متغیر h1 چیه؟؟؟

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


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

دلیل استفاده از متغیر h1 چیه؟؟؟

این قسمت رو درست کردم

ولی میگم تا بدونید 

من دیتابیسم رو به صورت ماژولی تعریف کردم و اون h1 میاد از اون ماژول اطلاعات میگیره

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


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

د

 

برای برنامم لیست علاقه مندی ها رو  درست کردم، تااینجا مشکلی نیست 

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

مشکل اینجاست وقتی رو باتن یک ایتم کلیک می کنم تا به علاقه مندی ها اضافه بشه خود ایتم اضافه میشه ولی فقط عکس ایتم آخر تغییر میکنه

فکر میکنم باید داخل یه حلقه ای پیزی باشه ولی پیاده سازیشو بلد نیستم

اینم کد ها

Sub Lp_Click
Dim cursor3 As Cursor
Dim b As Button
	b = Sender
cursor3 = s.ExecQuery("SELECT * FROM codsy WHERE radif = " & b.tag)
 	cursor3.Position = 0
Dim id As Int = cursor3.getint("radif")
	Dim fav As Int = cursor3.GetInt("fav")
	If fav = 0 Then
	    s.ExecNonQuery("UPDATE codsy SET fav = 1 WHERE radif = "&id)
		Lp.SetBackgroundImage(LoadBitmap(File.DirAssets , "favkh1.png"))
		ToastMessageShow("به علاقه مندی ها اضافه شد",False)
	Else
	    s.ExecNonQuery("UPDATE codsy SET fav = 0 WHERE radif = "&id)
		Lp.SetBackgroundImage(LoadBitmap(File.DirAssets , "favpor1.png"))
		ToastMessageShow("از علاقه مندی ها حذف شد",False)
	End If
	

End Sub

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


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

داداش من ک عین همین موضوع رو تو پستای 2,5,7 همین تاپیک براتون توضیح دادم مثالم براتون آوردم

شما باید از for each view استفاده کنید که تو پست 7 مثال کامل زدم

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


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

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

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

ایجاد یک حساب کاربری

برای حساب کاربری جدید در سایت ما ثبت نام کنید. عضویت خیلی ساده است !

ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید

ورود به حساب کاربری

×