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

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


mahfelsoft

سوال

با سلام خدمت همه دوستان . یک سوال دارم نمیدونم میشه یا نه . اما می پرسم شاید کسی بدونه .

ببینید ما در یک اکتیوتی دوتا دکمه داریم مثلا دکمه "1" و دکمه "2"

خوب حالا یه اکتیوتی دیگه هم داریم که دو تا لیست ویو توشه . لیست ویوی "1" و لیست ویوی "2"

 

حالا ما توی اکتیویتی اول وقتی روی دکمه "1" کلیک میکنیم میخوام لیست ویوی "1" توی اکتیویتی دوم ظاهر بشه

و وقتی روی دکمه "2" کلیک میکنیم میخوام لیست ویوی "2" توی اکتیویتی دوم ظاهر بشه .

آیا میشه ؟

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

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

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

آقا شایان لیست که برابر sh قرار نمی گیره !!!!!!!

بعد شما توی رویداد کلیک دکمه نوشتی test2.sh

startactivity چیزی نمی خواد ؟!

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

دوستان بالاخره حل شد .

من راهنمایی های همه رو انجام دادم اما متاسفانه باز لیست ها قاطی میشد یا قفل میکرد یا نصفه میومد . الان به ذهنم رسید بیام هر کدم از لیست ها رو توی یه پنل بزارم و بعد ویزیبل پنل ها تغییر بدم و کاری به لیست ها نداشته باشم . این کار رو کردم و برنامه بدون مشکل و قفل شدن ران شد .

ممنون از همه موفق باشید .

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

آقا شایان لیست که برابر sh قرار نمی گیره !!!!!!!

بعد شما توی رویداد کلیک دکمه نوشتی test2.sh

startactivity چیزی نمی خواد ؟!

 

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

فقط راهنمایی کردم

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

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

دوستان حالا این مشکل حل شد و هر دو لیست ها توی دو تا پنل جدا مرتب قرار گرفتن و جوری که میخواستم ظاهر میشن . اما این بار یه مشکل دیگه پیش اومد در مورد سرچ توی این لیست ها . چون دوتا لیست هستن مشکل پیش میاد حالا این مشکل جدید رو توی یه تاپیک دیگه مینویسم با کمک هم حلش کنیم ... :D:ok:

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

ببینید

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

If main.megdar = 1 Then
کدهای لیست ویو 1
Else If main.megdar = 2 Then
کد های لیست ویو 2
End IF

یعنی به کلیک اول مقدار 1 رو می دیم توی رویداد کلیکش داخل هر اکتیویتی که قراره بره به اکتیویتی مورد نظرمون که لیست ویو 1 رو بیاره بالا و برای کلیک 2 هم مقدار 2 رو بده

 

یعنی این طوری

Sub Btn1_Click
	megdar = 1
	StartActivity(titr)
End Sub


Sub Btn2_Click
	megdar = 2
	StartActivity(titr)
End Sub

امیدوارم منظورم رو قشنگ متوجه شده باشی

 

 

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

بنده دو اکتیویتی دیگه هم دارم که توی یکیشون یه دکمه واسه رفتن به لیست 1 هست و توی اون یکی اکتیویتی یه دکمه واسه رفتن به لیست دو هست . کدها واسه این حالت اصلا درست عمل نمیکنن . یا لیست ها رو قاطی نشون میدن یا لیست ها رو جابجا نمایش میدن . واسه این راهی دارید ؟

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

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

main.megdar = 1

-------------------

اکتیویتی یک ( شامل دو دکمه . دکمه 1 برای ظاهر شدن لیست 1 و دکمه2 برای ظاهر شدن لیست2)

دکمه یک رو مقدارش رو برابر 1 بذار و دکمه 2 رو کاری باهاش نداشته باش

Sub Btn1_Click
   megdar = 1
    StartActivity(titr)
End Sub

Sub Btn2_Click
    StartActivity(titr)
End Sub

اکتیویتی دو ( شامل یک دکمه برای ظاهر شدن لیست1)

Sub Btn1_Click
	main.megdar = 1
	StartActivity(titr)
End Sub

اکتیویتی سه ( شامل یک دکمه برای ظاهر شدن لیست2)

Sub Btn2_Click
	StartActivity(titr)
End Sub

اکتیویتی لیست ها ( شامل دو لیست ویو1 و 2)

Sub Btn1_Click
	main.megdar = 1
	StartActivity(titr)
End Sub

Sub Btn2_Click
	StartActivity(titr)
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

 

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

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

سلام


 


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


 


فرض میکنیم شما 2تا اکتیویتی داری


 


اکتیویتی اول Main


و اکتیویتی دوم Dovom


 


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


 


اول در اکتیویتی دوم از داخل دیزاینر خاصیت Visible لیست ویو هارو False کنید


 


و در Sub Global اکتیویتی دوم بنوییسید :



Dim ListView1,ListView2 As ListView

توجه کنید حتما ازDim استفاده کنید ن Private


 


حالا در ساب دکمه های اول و دوم در اکتیویتی اول یا Main بنویسید :



Sub Button1_Click
Dovom.ListView1.Visible = True
End Sub


Sub Button2_Click
Dovom.ListView2.Visible = True
End Sub
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

 

2list.rar

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

این روش هم می شه

اول توی Process_Globals یه متغییر بذار

Dim megdar As String

بعد بیا توی رویداد یکی از کلیک هات بزن

مثلا

megdar = 1

بعد توی Activity_Create اکتیویتی دوم بزن

If main.megdar = 1 Then
کدهای لیست ویو 1
Else
کد های لیست ویو 2
End IF
لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام

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

میتونیم با یک متغییر بولین هم خیلی راحت کارمون رو انجام بدیم.

 

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

Sub Process_Globals
Dim oneOrTwo As Boolean
End Sub

Sub btnOne_Clicke
 oneOrTwo = True
 StartActivity(ActivityMoredNazr)
 Activity.Finish
End Sub

Sub btnTwo_Click
oneOrTwo = False
 StartActivity(ActivityMoredNazr)
 Activity.Finish
End Sub

حالا رویداد Activity_Create  اکتیویتی که قراره لیست ویو نمایش داده بشه :

Sub Activity_Create(FirstTime As Boolean)
If Main.oneOrTwo Then
 ListView1.Visible = True
 Else
 ListView2.Visible = True
 End If
End Sub

موفق باشید.

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

ممنونم که جواب میدید . اما هیچ کدوم واسه من کار نکرد. کدهای آقا الیاس به این خط ارور میده :

Dovom.ListView1.Visible = True

سورس آقا عباس هم که فقط لیست ویو رو توی همون حالتی که شما درست کردی درست انجام میده . ببینید من مطالبم رو از دیتابیس گرفتم و لیست هام رو به این شکل تعریف کردم :

If Main.meghdar = 1 Then
	List_matlab.SingleLineLayout.Label.Gravity = Gravity.RIGHT
	List_matlab.SingleLineLayout.Label.TextColor = Colors.Black
	List_matlab.SingleLineLayout.Label.Left = List_matlab.SingleLineLayout.Label.Left - 10dip
	Dim cur As Cursor
	cur = SQL1.ExecQuery("SELECT * FROM mytable WHERE id BETWEEN 1 AND 30")
	For i = 0 To cur.RowCount-1
	cur.Position = i
	List_matlab.AddSingleLine2(cur.GetString("list"),cur.GetInt("id"))
	Next
	cur.Close

 	Else if Main.meghdar = 2 Then
 	list_matlab2.SingleLineLayout.Label.Gravity = Gravity.RIGHT
	list_matlab2.SingleLineLayout.Label.TextColor = Colors.Black
	list_matlab2.SingleLineLayout.Label.Left = list_matlab2.SingleLineLayout.Label.Left - 10dip
	Dim cur As Cursor
	cur = SQL1.ExecQuery("SELECT * FROM mytable WHERE id BETWEEN 30 AND 50")
	For i = 0 To cur.RowCount-1
	cur.Position = i
	list_matlab2.AddSingleLine2(cur.GetString("list"),cur.GetInt("id"))
	Next
	cur.Close
End If
لینک ارسال
به اشتراک گذاری در سایت های دیگر

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

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

یه سوال برام پیش اومده

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

دیتابیستون نیاز به فصل بندی داره ؟؟؟؟؟

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

کتاب نیست . برنامه ای هست که توش یه سری مطالب هم داره . حالا من توی این بخشش دچار مشکل شدم .

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

ببینید من حدود 12 تا دکمه دارم که هر کدوم یک لیست ویو نیاز دارن . من اگر بخوام برای هر دکمه یه اکتیوی درست کنم که لیستشو توش بزارم اصلا جالب نمیشه. به همین خاطر دنبال راهی هستم که لیست ها همه توی یه اکتیویتی باشن فقط هر کدوم طبق کلیک دکمه خودش ظاهر بشه .

 

الان بنده یه سورس ساده آماده میکنم براتون میزارم. ولی اگه باز جوابی به ذهنتون رسید بفرمایید

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

ببین من یه آموزش گذاشته بودم توی سایت گفتم شاید به دردتون بخوره

به اسم

 

آموزش فصل بندی کتاب

 

 

اینم سورس آموزش ببین شاید این به دردت بخونه

 

 

test.rar

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

پاسخ آقا عباس و آقا مجید هر دو کار کرد . اما یه نکته فقط زمانی لیست ها درست بالا میان که این کد رو برای ورود از یک اکتیویتی استفاده کنیم . اگر برای ورود از دو یا سه اکتیویتی به اکتیویتی لیست ها استفاده کنیم لیست ها رو هم ظاهر میشن و خراب میشن .
ببینید ما مثلا 4 اکتیویتی داریم .
اکتیویتی یک ( شامل دو دکمه . دکمه 1 برای ظاهر شدن لیست 1 و دکمه2 برای ظاهر شدن لیست2)
اکتیویتی دو ( شامل یک دکمه برای ظاهر شدن لیست1)
اکتیویتی سه ( شامل یک دکمه برای ظاهر شدن لیست2)
اکتیویتی لیست ها ( شامل دو لیست ویو1 و 2)

خوب حالا ما الان سه اکتیویتی داریم که توی هر کدوم دکمه هست برای ورود به اکتیویتی لیست ویو و ظاهر شدن لیست مورد نظر . وقتی کدهای دوستان رو برای هر سه تا اکتیوتی گذاشتم لیست ها قاطی باز میشدن و درست عمل نمی کرد . حالا راهی برای این قضیه دارید ؟

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

ببینید

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

If main.megdar = 1 Then
کدهای لیست ویو 1
Else If main.megdar = 2 Then
کد های لیست ویو 2
End IF

یعنی به کلیک اول مقدار 1 رو می دیم توی رویداد کلیکش داخل هر اکتیویتی که قراره بره به اکتیویتی مورد نظرمون که لیست ویو 1 رو بیاره بالا و برای کلیک 2 هم مقدار 2 رو بده

 

یعنی این طوری

Sub Btn1_Click
	megdar = 1
	StartActivity(titr)
End Sub


Sub Btn2_Click
	megdar = 2
	StartActivity(titr)
End Sub

امیدوارم منظورم رو قشنگ متوجه شده باشی

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

سلام

اول بیا تو

Sub Process_Globals

End Sub

یه متغیر از نوع String تعریف کن

در اکتیویتی 2 لیست  ویوو رو با متغیر مساوی کن

در 

Sub Activity_Create(FirstTime As Boolean)

End Sub

در اکتیویتی این کار رو کن

یکی از لیست ویوو هارو Visible رو false کن و دیگری True

برو تو اکتیویتی اولی

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

Sub Button1_Click
test2.sh
End Sub

sh همون متغیری هست که تعریف کردیم در و test2 هم اسم اکتیویتی دوم ماست

Sub Process_Globals

End Sub

موفق باشید

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

بایگانی شده

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

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

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