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

کلیک دادن به دکمه در صفحه ای که بعد از مولتی پنل باز میکنیم


mahfelsoft

سوال

دوستان از عنوان بدی که برای مطلب انتخاب کردم عذر میخوام هیچی به ذهنم نرسید ..

 

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

1 . عنوان مطالب ( که در مولتی پنل هام نمایش داده میشه )

2 . متن ( که بعد از کلیک روی هر مولتی پنل توی یه اکتیویتی نمایش داده میشه)

3. لینک ( که من اومدم توی صفحه ای که مطالب نمایش داده میشن یه دکمه گذاشتم که وقتی روش کلیک کنیم لینک مربوط به همون ردیف مطلب رو که توی دیتابیس داشتیم برامون باز میکنه )

 

خوب من با 2 مورد اول مشکلی ندارم . اما مورد سوم مشکل دارم .

اینکه چطور من به اون یه دونه دکمه بگم که وقتی کلیک شد روش لینک مربوط به همین مطلبی که الان بازه توی صفحه رو باز کنه ؟

راهنمایییییییییییی لطفا

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

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

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

به این شکل استفاده کنید

کتابخونه phone رو تیک بزنید

یه متغیر در گلوبال اکتیویتی دوم تعریف کنید به اسم linkkk

dim linkkk as string

Sub LoadData
	Dim Cur As Cursor
	Cur =Bank.ExecQuery("SELECT * FROM tbl")
	For i = 0 To Cur.RowCount - 1
	 Cur.Position = i
	 Dim p As Panel
	 p.Initialize("p")
	 sv.Panel.AddView(p,0,sTop,100%x,100%y)
	 sTop = sTop + 30%y
	 p.LoadLayout("items")
	 nfLbl.Text = Cur.GetString("name")
	 button1.Tag = Cur.Getint("id")''''''''''''''''''''''''''''''''''''''''''''''
	 Next
	 sv.Panel.Height = sTop
	 Cur.Close
	

End Sub
Sub button1_Click
    Dim iz As Button
    iz = Sender
    meghdar=iz.tag
StartActivity(matlab_Home)
End Sub
Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("matlab")
	matn.Initialize("")
	ScrollView1.Panel.AddView(matn,2%x,1%y,90%x,90%y)


main.cur = main.Bank.exequery("SELECT * FROm tbl WHERE id = "&main.meghdar)'''''''''''''''''''''''''''''


cur.position = 0'''''''''''''''''''''''''''''''''''''''
	ts.Initialize
	matn.Text = main.cur.getstring("matlab")'''''''''''''''''''''
linkkk = main.cur.getstring("link")'''''''''''''''''''''''''''''''
End Sub



Sub btnlink_click
dim p as phoneintents''''''''''''''''''''''''''''''''''''
startactivity(p.openBrowser(linkkk))'''''''''''''''''''''''''''
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام برادر

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

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

خوب

شما توی این ماژول، میای و ای دی رو میدی و متن و عنوان رو میگیری

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

فک نکنم مشکلی باشه 

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

شما اموزش تگ و سندر (tag , sender ) رو ببینین مشکلتون حل میشه

 

زمانی که توی حلقه متن لیبل و یا باتن رو مشحص میکنید ، tag اون دکمه رو برابر لینک بزارید 

For i=0 To cur. rowcount-1
	.
	.
	.
	.
	.
	button1.tag=cur.GetString("link")
	.
	.
	.
Next

زمان کلیک هم به این صورت تگ رو بگیرین :
 

Sub button1_Click
	Dim b As Button
	b=Sender
	ToastMessageShow( b.Tag ,False)
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بله . راست میگید . اصلا به این قضیه توجه نکرده بودم . بله من هم با تگ و سندر کار میکنم

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


توی گلوبال

dim linkkk as string

توی act Create

cur = sql.exequery("SELECT * FROM tbl WHERE id = 1")

cur.position = 0

linkkk = cur.getstring("link")

توی ساب کلیک دکمه

dim p as phoneIntents

startActivity(p.openBrowser(linkkk))

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

ببخشید من یکم گیج شدم .

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

حالا چطور لینک رو توی همین اکتیویتی مطالب باز کنم ؟ چون الان با تگ و سندر که میزارم ارور میده . انگار اشتباه انجام میدم

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

برادر شما کداتو قرار بده

از اکتیویتی قبلی چجوری با تگ و سندر میاری؟

میریزی توی یه متغیر فک کنم

در کل کار با متغیر هاست

شما اگه دوتا اکتیویتی دارید، بهترن کار اینه که یا تمامی مطالب رو بگیرید توی یه متغیر و وسطشون # بذارید تو اکتیویتی بعدی اسپلیت کنید

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

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

ببینید :

این کدا مال اکتیویتی مولتی پنله :

Sub LoadData
	Dim Cur As Cursor
	Cur =Bank.ExecQuery("SELECT * FROM tbl")
	For i = 0 To Cur.RowCount - 1
	 Cur.Position = i
	 Dim p As Panel
	 p.Initialize("p")
	 sv.Panel.AddView(p,0,sTop,100%x,100%y)
	 sTop = sTop + 30%y
	 p.LoadLayout("items")
	 nfLbl.Text = Cur.GetString("name")
	 button1.Tag = Cur.GetString("matlab")
	 Next
	 sv.Panel.Height = sTop
	 Cur.Close
	

End Sub
Sub button1_Click
    Dim iz As Button
    iz = Sender
    meghdar=iz.tag
StartActivity(matlab_Home)
End Sub

این کدا هم مال اکتیویتی مطلبه که یه دکمه توشه و می خوام با زدنش لینک مربوط به ردیف اون متن رو باز کنه :


Sub Activity_Create(FirstTime As Boolean)
	Activity.LoadLayout("matlab")
	matn.Initialize("")
	ScrollView1.Panel.AddView(matn,2%x,1%y,90%x,90%y)
	ts.Initialize
	matn.Text = Main.meghdar
End Sub



Sub btnlink_click

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

ببین

شما الان فیلد id داری یا نه؟

و اینکه لینکی که میگی توی کدوم ستون قرار داره ؟ 

همین ستون مطلب؟

شما الان اومدی و مطلب رو دادی به تگ دکمه، 

باید ای دی رو بدی و در اکتیویتی بعدی بهره ببری ازش

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

بله فیلد آی دی دارم .

و لینک توی یه ستون جداست ...

ستون اول : id

ستون دوم : name (همون عنوان مولتی پنل ها)

ستون سوم : matlab

ستون چهارم : link

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

متاسفانه ارور میده به این خط :

main.cur = main.Bank.exequery("SELECT * FROm tbl WHERE id = "&main.meghdar(

کلا میگه cur رو نمیشناسه

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

درست شد. اون خطوط آخر رو اشتباه نوشتید . البته احتمالا چون سریع جواب دادی اینطور شد. حالا تصحیح میکنم :

Dim cur As Cursor
cur = main.Bank.execquery("SELECT * FROM tbl WHERE id = "&main.meghdar)
cur.position = 0
ts.Initialize
matn.Text = cur.getstring("matlab")
linkkk = cur.getstring("link")
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

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

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