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

درخواست استفاده از DoEvent


bahman

سوال

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

من ی نرم افزاری نوشتم ک همه چیش حله منتهی سرعتش خیلی پایینه

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

سرعت خیلی افتضاحه

از یکی از اساتید پرسیدم گفت درون حلقه از doevent استفاده کن

میشه بگین چجوری استفاده کنم؟

اینم بگم ک من هر موضوع رو درون یک اکتیویتی نشون میدم

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

Sub Activity_Create(FirstTime As Boolean)

   If File.Exists(File.DirInternal,"smsha6.db")=False Then
   File.copy(File.DirAssets,"smsha6.db",File.DirInternal,"smsha6.db")
   End If
   If SQL1.IsInitialized = False Then
   SQL1.Initialize(File.DirInternal,"smsha6.db",True)
   End If
   cursur1 = SQL1.ExecQuery("select * FROM asly WHERE id BETWEEN 1 AND 111")

   myfont = Typeface.LoadFromAssets("byekan.ttf")
   Activity.LoadLayout("sv")

   For i=0 To cursur1.RowCount-1
   cursur1.Position=i
   text= cursur1.GetString("payamak") 
   ScrollView1.Panel.Color = Colors.Transparent

   Dim p1 As Panel
   p1.Initialize("")
   p1.LoadLayout("main")
   ScrollView1.Panel.AddView(p1,0,PanelHeight,100%x,100dip)

   btnfav.Tag = i
   btnshare.Tag = i
   btncopy.Tag = i
   btnnumber.text = i + 1
   btnnumber.Typeface=Typeface.LoadFromAssets("byekan.ttf")

   ht=art(text,Label1,myfont,20)
   Label1.TextColor=Colors.Black
   p1.Height=ht+70dip
   PanelHeight=PanelHeight+ht+70dip
   Next
   ScrollView1.Panel.Height=PanelHeight
   DoEvents            
End Sub

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

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

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

dim a as int
select true
case a>10 and a<15 
'write code
case a<0
'write code
...
.
.
.
.
End select

اگه کد درسته بازم نمیشه :(

شایدم من اشتباه میزنم دوستان کدم اولین پستم هست دوستان یکی زحمتشو میکشه تو دستور select case بزاره؟

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

تست کن اینو

[left]dim count as int

   Select Case count
Case 0

ye qesmat codet

   If count = 0 Then
   count = 1
End if
   Case 1

ye qesmat codet

   If count = 1 Then
   count = 2
End if
   Case 2
ye qesmat codet

   End Select

[/left]

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

شما بیا تو اکتیویتی اولت دیتا بیسو کپی کن و اینیشیالیزش کن

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

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

اما باز همون اش و همون کاسه

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

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

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

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

شما بیا تو اکتیویتی اولت دیتا بیسو کپی کن و اینیشیالیزش کن

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

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

متاسفانه نشد :(

اونو توی تایمر باید بنویسی . سرعت تایمرم 200 بزا . اکتیویتی استارت شد تایمر اجرا بشه .

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

از دوستان کسی راه حلی ذهنش نمیاد؟

موقع استارت اکتیویتیت اون همه کدرو اجرا میکنه باید بگیره .*che?*

شما بیا با select case و تایمر کار کن مثلا 4 بار select کنه کداتم به 4 قسمت تقسیم کن تایمرتم بیا 300 بزار یعنی هر 30صدم ثانیه یه قسمت کدتو اجرا کنه تقریبا تو یه ثانیه همه کدات اجرا بشه من خودم اینکارو میکنم .

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

بایگانی شده

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

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

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