Ik heb een formulier wat een aantal vaste velden bevat en verder gevuld wordt door 'dynamische' velden.
Bij een vast tekstveld vul je in hoeveel 'orderregels' er op een formulier moeten komen en vervolgens verschijnen de velden op het formulier. Elke orderregel bevat 10 velden.
De tekstvelden zijn arrays. De grootte van de array is dus het aantal orderregels dat moet verschijnen op het formulier. Tevens wordt de locatie opgegeven waar het veld moet komen.
Stuk voorbeeld code:
De code is dus echt heel simpel en stelt niet zoveel voor. Mijn probleem is echter dat wanneer ik bijvoorbeeld 50 regels wil toevoegen het echt gigantisch lang duurt voordat deze zichtbaar zijn op het formulier. Een regel of 5 gaat nog wel maar het wordt al snel erg traag. Hebben jullie een idee hoe ik dit 'beter' kan doen zodat het formulier een stuk sneller wordt?
Natuurlijk kan ik gewoon 100 regels plaatsen en dan de velden 'hidden' maken en alleen tonen wanneer nodig, maar wil dit graag dynamisch oplossen.
Ik heb het formulier getest op meerdere pc's. Van zeer 'snelle' tot langzame pc's en op allemaal duurt het gewoon te lang voordat alle regels getoond worden.
Bij een vast tekstveld vul je in hoeveel 'orderregels' er op een formulier moeten komen en vervolgens verschijnen de velden op het formulier. Elke orderregel bevat 10 velden.
De tekstvelden zijn arrays. De grootte van de array is dus het aantal orderregels dat moet verschijnen op het formulier. Tevens wordt de locatie opgegeven waar het veld moet komen.
Stuk voorbeeld code:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
| Public veld1() as textbox Public veld2() as textbox Public veld3() as textbox Public veld4() as textbox Public veld5() as textbox Public veld6() as textbox Public veld7() as textbox Public veld8() as textbox Public veld9() as textbox Public veld10() as textbox array.resize(veld1, txtAantalregels.text) array.resize(veld2, txtAantalregels.text) array.resize(veld3, txtAantalregels.text) array.resize(veld4, txtAantalregels.text) array.resize(veld5, txtAantalregels.text) array.resize(veld6, txtAantalregels.text) array.resize(veld7, txtAantalregels.text) array.resize(veld8, txtAantalregels.text) array.resize(veld9, txtAantalregels.text) array.resize(veld10, txtAantalregels.text) for i as integer = 1 to 10 veld1(i).location = new point(waardex, waardey) veld2(i).location = new point(waardex, waardey) veld3(i).location = new point(waardex, waardey) veld4(i).location = new point(waardex, waardey) veld5(i).location = new point(waardex, waardey) veld6(i).location = new point(waardex, waardey) veld7(i).location = new point(waardex, waardey) veld8(i).location = new point(waardex, waardey) veld9(i).location = new point(waardex, waardey) veld10(i).location = new point(waardex, waardey) veld1(i).text = "text uit string" veld2(i).text = "text uit string" veld3(i).text = "text uit string" veld4(i).text = "text uit string" veld5(i).text = "text uit string" veld6(i).text = "text uit string" veld7(i).text = "text uit string" veld8(i).text = "text uit string" veld9(i).text = "text uit string" veld10(i).text = "text uit string" me.controls.add(veld1(i)) me.controls.add(veld2(i)) me.controls.add(veld3(i)) me.controls.add(veld4(i)) me.controls.add(veld5(i)) me.controls.add(veld6(i)) me.controls.add(veld7(i)) me.controls.add(veld8(i)) me.controls.add(veld9(i)) me.controls.add(veld10(i)) next |
De code is dus echt heel simpel en stelt niet zoveel voor. Mijn probleem is echter dat wanneer ik bijvoorbeeld 50 regels wil toevoegen het echt gigantisch lang duurt voordat deze zichtbaar zijn op het formulier. Een regel of 5 gaat nog wel maar het wordt al snel erg traag. Hebben jullie een idee hoe ik dit 'beter' kan doen zodat het formulier een stuk sneller wordt?
Natuurlijk kan ik gewoon 100 regels plaatsen en dan de velden 'hidden' maken en alleen tonen wanneer nodig, maar wil dit graag dynamisch oplossen.
Ik heb het formulier getest op meerdere pc's. Van zeer 'snelle' tot langzame pc's en op allemaal duurt het gewoon te lang voordat alle regels getoond worden.