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

ایجاد مولتی پنل از پایین به بالا


rasul23

سوال

با سلام خدمت دوستان

 

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

مولتی پنلم پنل دوم زیر رو پنل اول / پنل سوم رو زیر پنل دوم میسازه و به همین ترتیب پنل ها ساخته میشه

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

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

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

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

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

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

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

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

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

select * from tbl order by id desc

اگرم نمیخوای کوئری بدی به این شکا کار کن... 

For i = 0 To Cur.RowCount-1
	Cur.Position = ((Cur.RowCount-1)-i)
	WhichListView.AddSingleLine2(Cur.GetString(Titr),Cur.GetInt(Id))
Next
لینک ارسال
به اشتراک گذاری در سایت های دیگر

 

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

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

select * from tbl order by id desc

اگرم نمیخوای کوئری بدی به این شکا کار کن... 

For i = 0 To Cur.RowCount-1
	Cur.Position = ((Cur.RowCount-1)-i)
	WhichListView.AddSingleLine2(Cur.GetString(Titr),Cur.GetInt(Id))
Next

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

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

من اصلا متوجه مشکل نمیشم

این اطلاعات رو مگه نمیفرستید به دیتابیس؟

با کدای ما کار کنید

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

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

http://answercenter.ir/topic/13593-%D9%85%D8%B9%D8%A7%D8%AF%D9%84-%D8%AF%D8%B3%D8%AA%D9%88%D8%B1-clear-%D9%84%DB%8C%D8%B3%D8%AA-%D9%88%DB%8C%D9%88-%D8%AF%D8%B1-%D8%A7%D8%B3%DA%A9%D8%B1%D9%88%D9%84-%D9%88%DB%8C%D9%88/

و بعد بیاین و از اول لود کنید

کد رو هم دوستان دادن بهتون...

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

من اصلا متوجه مشکل نمیشم

این اطلاعات رو مگه نمیفرستید به دیتابیس؟

با کدای ما کار کنید

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

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

http://answercenter.ir/topic/13593-%D9%85%D8%B9%D8%A7%D8%AF%D9%84-%D8%AF%D8%B3%D8%AA%D9%88%D8%B1-clear-%D9%84%DB%8C%D8%B3%D8%AA-%D9%88%DB%8C%D9%88-%D8%AF%D8%B1-%D8%A7%D8%B3%DA%A9%D8%B1%D9%88%D9%84-%D9%88%DB%8C%D9%88/

و بعد بیاین و از اول لود کنید

کد رو هم دوستان دادن بهتون...

دوست عزیز / برنامه من وقتی اجرا میشه میاد بررسی میکنه ایا عکس شماره 10 تو پوشه فلان وجود داره یا نه / اگه وجود داشت خب با ساختن مولتی پنل نمایشش میده و میره برای بررسی عکس شماره 9  / و اگه وجود نداشت میره برای دانلود اون عکس و با ساختن مولتی پنل نمایشش میده / بعد دانلود میره برای بررسی عکس شماره 9 / به همین ترتیب این حلقه انجام میشه/ قابل ذکره که بنده از حلقه فور استفاده نکردم   / خب بعد از این که عکس یکم هم اضافه شد یک تایمر فعال میشه و هر پنج ثانیه میاد بررسی میکنه ایا تعداد ردیف های من که قبلن ده تا بود الان چنتاست اگه تغییر نکرده بود که دو باره تایمر فعال میشه ولی اما اگه تغییر کرده بود مثلا عکس یازده هم بهش اضافه شده بود میاد عکس یازدهمی رو دانلود میکنه و با مولتی پنل نمایش میده / در حالت عادی این مولتی پنل در زیر همه پنل ها قرار میگره و میره ته ته / اما من میخام این پنل اولین  پنل قرار بگیره که وقتی بنده عکسی رو فرستادم به دیتابیس برنامه بیاد اون عکس رو اول و در بالای همه پنلها نشون بده

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

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

دوستان واقعا جواب درست رو بهتون دارن میدن و خودتون دارید متوجه نمیشید  :wacko1:

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

حالا چه همون لحظه که برنامه داره اجرا میشه همه رو برعکس بخونید

چه زمانی که برنامه اجرا هست و یک آیتم جدید اضافه کردید میتونید آپدیت کنید و آیتم جدیدی که داره اضافه میشه بره اول کار !

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

اهان ایول زدی تو هدف اپدیت میکنم باز پنلهای قبل وجود دارن / 

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

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

sub panelposition (panel1 as panel, panel2 as panel)

بعدش داخل اون مشخص کنید که کدوم یکی بالای دیگری قرار بگیره. یعنی از Panel1.height و panel1.Top و غیره استفاده کنید داخل این تابع.

بازم مشکلی داشتی خوشحال میشم کمکی بکنم.

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

سلام شما بیا با این کوئری اطلاعات رو از اخر به اول برحسب id بخون و تو مولتی پنل نمایش بده
 

SELECT * FROM tblname ORDER BY id DESC
لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام شما بیا با این کوئری اطلاعات رو از اخر به اول برحسب id بخون و تو مولتی پنل نمایش بده

SELECT * FROM tblname ORDER BY id DESC

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

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

 

مثلا اگه به تاپیک ها توجه کرده باشین جدیدترین تاپیک یا اخرین تاپیک از بالا اولین تاپیک قرار گرفته

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

راستش متوجه نشدم میشه بیشتر توضیح بدین؟

من کد زیر رو نوشتم :

Sub Globals
	Dim panel1, panel2 As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)
	panel1.Initialize("")
	panel2.Initialize("")
	Activity.AddView(panel1,0,0,Activity.Width,Activity.Height/2)
	Activity.AddView(panel2,0,Activity.Height/2,Activity.Width,Activity.Height/2)
	panel1.Color = Colors.Red
	panel2.Color = Colors.Blue
	
	panelchange(panel1, panel2, 0)
End Sub

Sub panelchange(mypanel1 As Panel, mypanel2 As Panel, space As Int)
	mypanel2.Top = mypanel1.Top
	mypanel1.Top = mypanel2.Top + mypanel2.Height + space
End Sub
کد آپدیت شد و کاملا کار می کنه. برای جابجایی دو پنل و ایجاد فاصله بین شون ازش می تونید استفاده کنید
لینک ارسال
به اشتراک گذاری در سایت های دیگر

من کد زیر رو نوشتم :

Sub Globals
	Dim panel1, panel2 As Panel
End Sub

Sub Activity_Create(FirstTime As Boolean)
	panel1.Initialize("")
	panel2.Initialize("")
	Activity.AddView(panel1,0,0,Activity.Width,Activity.Height/2)
	Activity.AddView(panel2,0,Activity.Height/2,Activity.Width,Activity.Height/2)
	panel1.Color = Colors.Red
	panel2.Color = Colors.Blue
	
	panelchange(panel1, panel2, 0)
End Sub

Sub panelchange(mypanel1 As Panel, mypanel2 As Panel, space As Int)
	mypanel2.Top = mypanel1.Top
	mypanel1.Top = mypanel2.Top + mypanel2.Height + space
End Sub
کد آپدیت شد و کاملا کار می کنه. برای جابجایی دو پنل و ایجاد فاصله بین شون ازش می تونید استفاده کنید

 

 

نه این نمیشه

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

نه این نمیشه

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

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

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

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

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

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

ن از این ناراحت شدم ک این توضیحو اولش ندادی

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

For i = 0 To 10 'number of panels
		For Each v As View In Activity.GetAllViewsRecursive
			If v Is Panel And v.Tag = "panel" & i Then
				Dim p1 As Panel = v
				For Each w As View In Activity.GetAllViewsRecursive
					Dim j As Int = i + 1
					If w Is Panel And v.Tag = "panel" & j Then
						Dim p2 As Panel = w
					End If
				Next
				Try
					panelchange(p1, p2, 10dip)
				Catch
					Log(LastException)
				End Try
			End If
		Next
	Next
هر چند فکر می کنم خودت شرایط حلقه رو عوض کنی که برعکس قرار بگیرن خودشون بهتر باشه. کد من بهینه نیست.
لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

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

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

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