.
[ Voor 99% gewijzigd door Verwijderd op 31-10-2023 22:42 ]
Heb ooit een equivalente maar wel veel simpeler situatie gehad. Als losse controls werken kan je proberen ze in een frame te stoppen en je scrolls op het frame los te laten. Weet niet of hier limieten aan zitten qua max aantal controls in frame etc, maar als scrollen je enige probleem is't het proberen waard lijkt me.Verwijderd schreef op 21 september 2004 @ 17:01:
Als ik het zelf ga opbouwen uit losse regels van losse controls dan zit ik met het feit dat het aantal regels groter kan zijn dan er in 1 keer weergegeven kunnen worden. Ik moet dan zelf vertical scrollbars toevoegen die mijn eigen controls omlaag scrollen. Dit vind ik wel heel erg tricky en gaat ook best veel werk worden. Kan me goed voorstellen dat hier wel iets simpelers voor is misschien?
Het is al even geleden dat ik met VB gewerkt heb, maar van VB5 kan ik me herinneren dat er een limiet op zat van max 1024 controls per form. Wel zinnig om even te checken dusonkl schreef op 21 september 2004 @ 20:48:
Heb ooit een equivalente maar wel veel simpeler situatie gehad. Als losse controls werken kan je proberen ze in een frame te stoppen en je scrolls op het frame los te laten. Weet niet of hier limieten aan zitten qua max aantal controls in frame etc, maar als scrollen je enige probleem is't het proberen waard lijkt me.
Verwijderd
Is idd even prutsen. Basis is: een frame heeft-als ieder control een set maten (Top, Left, Height etc.) De top en left properties van alle controls binnen het frame -al jou controls- zijn dan t.o.v. de linkerbovenhoek van het frame.Verwijderd schreef op 22 september 2004 @ 10:29:
Maximaal zijn er 200 regels. Per regel krijg ik dan: 1x [radiobutton], 1x[textbox], 1x[iets grafisch].
valt dus binnen 1000.
Maar hoe zou dat scrollen dan moeten?
[ Voor 24% gewijzigd door onkl op 22-09-2004 11:25 ]
1Zet de index van je control (MyTextBox bijvoorbeeld) op 0 en dan:Verwijderd schreef op 22 september 2004 @ 16:11:
Ehm, maar in een control heb je geem form1..... damn, hoe maak ik er nu dan een eigen control van?
1
2
3
4
5
6
7
8
9
10
11
| Private Sub Form_Load()
Dim T As Long
For T = 0 To 10
If T > 0 Then Load Text1(T)
Text1(T).Left = 100
Text1(T).Top = T * 500
Text1(T).Text = "Blabla" & T
Text1(T).Visible = True
Next
End Sub |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
| Private Sub Form_Load()
Dim T As Long
Dim li As ListItem
ListView1.View = lvwReport
ListView1.Checkboxes = True
ListView1.ColumnHeaders.Add , , "Kolom 1"
ListView1.ColumnHeaders.Add , , "Kolom 2"
For T = 0 To 50
Set li = ListView1.ListItems.Add(, , "Blabla" & T)
li.SubItems(1) = CBin(T)
li.Checked = (Rnd < 0.5)
Next
End Sub
Public Function CBin(ByVal Nr As Long, Optional Precision As Integer = 8) As String
Do Until Nr = 0
CBin = CStr((Nr Mod 2)) + CBin
Nr = Nr \ 2
Loop
CBin = Format(Val(CBin), String(Precision, "0"))
End Function |
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
| Private arrValues(250) As String
Private Const cTextBoxCount = 10
Private Sub Form_Load()
Dim T As Long
'Textboxes maken
For T = 0 To cTextBoxCount
If T > 0 Then Load Text1(T)
Text1(T).Left = 100
Text1(T).Top = T * 450
Text1(T).Visible = True
Next
'Scrollbar instellen
VScroll1.Min = 0
VScroll1.Max = UBound(arrValues) - cTextBoxCount
'Array met testwaardes vullen
For T = 0 To UBound(arrValues)
arrValues(T) = "Blabla" & T
Next
DisplayValues VScroll1.Value
End Sub
Private Sub DisplayValues(lOffset As Long)
Dim T As Long
For T = 0 To cTextBoxCount
Text1(T).Text = arrValues(T + lOffset)
Next
End Sub
Private Sub VScroll1_Change()
DisplayValues VScroll1.Value
End Sub
Private Sub VScroll1_Scroll()
DisplayValues VScroll1.Value
End Sub |
[ Voor 150% gewijzigd door RobIII op 22-09-2004 18:23 ]
There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.
Je eigen tweaker.me redirect
Over mij