Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Treeview loading is slow
Message
From
15/01/2002 06:12:18
 
 
To
15/01/2002 05:55:20
General information
Forum:
Visual FoxPro
Category:
ActiveX controls in VFP
Miscellaneous
Thread ID:
00604761
Message ID:
00604765
Views:
19
Hi Magnus

Try

'thiform.lockscreen = .t.' before your code and 'thisform.lockscreen=.f.' after your code.

It will reduce a little, that time. But, if you need to put a large amount of data in the treeview is better you try to do it at the EXPAND method.

Claudio

>Hi everybody.
>
>I use the MS Treeview control to present hirarctic data but it's very slow to load. I have 3 tables einf101V 21 rows, einf102V 63 rows, einf103V 272 rows and it takes about 20 secs to load. Is there anything wrong with the code below?
>
>**********
>LOCAL lcRoot As String, loNode1 As Object, loNode2 As Object, loNode3 As Object, loNode4 As Object
>
>* Fill the TreeView control with values in the table
>WITH THIS.oleTree
> .Nodes.Clear
> lcRoot = THIS.NewKey("R")
> ThisForm.cRoot = lcRoot
> loNode1 = .Nodes.Add(, 1, lcRoot, ALLTRIM(_SCREEN.cKundNamn), 1, 2)
> loNode1.Sorted = .T.
> SELECT einf101V
> GO TOP
> SCAN
> lcEnh = THIS.NewKey("E")
> loNode2 = .Nodes.Add(lcRoot, 4, lcEnh, ALLTRIM(einf101V.enhet_namn), 3, 7)
> loNode2.Tag = ALLTRIM(einf101V.pk_101)
> IF loNode2.Sorted = .F.
> loNode2.Sorted = .T.
> ENDIF
> lcPK_101 = einf101V.pk_101
> SELECT einf102V
> GO TOP
> SEEK lcPK_101
> IF FOUND()
> SCAN WHILE einf102V.fk_101 = lcPK_101
> lcAvd = THIS.NewKey("A")
> loNode3 = .Nodes.Add(lcEnh, 4, lcAvd, ALLTRIM(einf102V.avd_namn), 4, 8)
> loNode3.Tag = einf102V.pk_102
> IF loNode3.Sorted = .F.
> loNode3.Sorted = .T.
> ENDIF
> lcPK_102 = einf102V.pk_102
> SELECT einf103V
> GO TOP
> SEEK lcPK_102
> IF FOUND()
> SCAN WHILE einf103V.fk_102 = lcPK_102
> lcKs = THIS.NewKey("K")
> loNode4 = .Nodes.Add(lcAvd, 4, lcKs, ALLTRIM(einf103V.kstalle) + " " + ALLTRIM(einf103V.ben), 5, 9)
> loNode4.Tag = einf103V.pk_103
> IF loNode4.Sorted = .F.
> loNode4.Sorted = .T.
> ENDIF
> ENDSCAN
> loNode3.Expanded = .T.
> ENDIF
> SELECT einf102V
> ENDSCAN
> loNode2.Expanded = .T.
> ENDIF
> SELECT einf101V
> ENDSCAN
> loNode1.Expanded = .T.
>ENDWITH
>**************
"Now to him who is able to do immeasurably more than all we ask or imagine, according to his power that is at work within us, Ephesians 3:20
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform