Ik wil het volgende maken.
Er is een lstDraggedItems van waaruit gesleept kan worden, en waar de items in blijven staan nadat een copie van het item gesleept is.
Er is een txtCommentaar van waaruit gesleept kan worden en waarbij de tekst ook blijft staan
er zijn txt1, txt2 en txt3 waarnaar gesleept kan worden.
Tussen deze 3 vakken moet je onderling ook kunnen slepen. Nu wil ik graag dat als je een item uit 1 van de 3 vakken sleept het verdwijnt uit het vak waar je uit sleept (op het moment van droppen)
Ik heb al een opzetje gemaakt (zie commentaar in de code)--> in MyTxtId wordt bijgehouden uit welk vak gesleept wordt
weet iemand welke statements hier moeten komen?
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
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
| Private MyIdx As Long
Private MyTxtId As Long
Private Sub Form_Load()
' Set the visible property of txtItem to false
txtItem.Visible = False
'Add items to list1 (lstDraggedItems)
lstDraggedItems.AddItem "Apple"
lstDraggedItems.AddItem "Orange"
lstDraggedItems.AddItem "Grape"
lstDraggedItems.AddItem "Banana"
lstDraggedItems.AddItem "Lemon"
txtCommentaar.Text = "tastes good"
End Sub
Private Sub lstDraggedItems_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
txtItem.Text = lstDraggedItems.Text
If txtItem.Text = "" Then Exit Sub ' Don't perform a drag for nothing
txtItem.Top = Y + lstDraggedItems.Top
txtItem.Left = X + lstDraggedItems.Left
txtItem.Drag
MyIdx = lstDraggedItems.ListIndex
lstDraggedItems.Tag = "lijst" ' deze houdt bij vanuit welk vak er gesleept wordt: aan betekent vanuit de lijst
End Sub
Private Sub txt1_DragDrop(Source As Control, X As Single, Y As Single)
On Error GoTo EndHere
txt1.Text = txtItem.Text
If lstDraggedItems.Tag = "tekst" Then ' verwijdert de tekst uit het gesleepte vak
'hier moet een statement komen dat uit het juiste vak de tekst verwijdert
Else
End If
EndHere:
End Sub
Private Sub txt2_DragDrop(Source As Control, X As Single, Y As Single)
On Error GoTo EndHere
txt2.Text = txtItem.Text
If lstDraggedItems.Tag = "tekst" Then ' verwijdert de tekst uit het gesleepte vak
'hier moet een statement komen dat uit het juiste vak de tekst verwijdert
Else
End If
EndHere:
End Sub
Private Sub txt1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lstDraggedItems.Tag = "tekst" ' deze houdt bij vanuit welk vak er gesleept wordt: tekst betekent vanuit txt1,txt2 of txt3
txtItem.Text = txt1.Text
If txtItem.Text = "" Then Exit Sub ' Don't perform a drag for nothing
txtItem.Top = Y + txt1.Top
txtItem.Left = X + txt1.Left
txtItem.Drag
MyTxtId = 1 'houdt bij uit welk tekstvak er gesleept wordt
End Sub
Private Sub txt2_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lstDraggedItems.Tag = "tekst" ' deze houdt bij vanuit welk vak er gesleept wordt: tekst betekent vanuit txt1,txt2 of txt3
txtItem.Text = txt2.Text
If txtItem.Text = "" Then Exit Sub ' Don't perform a drag for nothing
txtItem.Top = Y + txt2.Top
txtItem.Left = X + txt2.Left
txtItem.Drag
MyTxtId = 2 'houdt bij uit welk tekstvak er gesleept wordt
End Sub
Private Sub txt3_DragDrop(Source As Control, X As Single, Y As Single)
On Error GoTo EndHere
txt3.Text = txtItem.Text
If lstDraggedItems.Tag = "tekst" Then ' verwijdert de tekst uit het gesleepte vak
'hier moet een statement komen dat uit het juiste vak de tekst verwijdert
Else
End If
EndHere:
End Sub
Private Sub txt3_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lstDraggedItems.Tag = "tekst" ' deze houdt bij vanuit welk vak er gesleept wordt: tekst betekent vanuit txt1,txt2 of txt3
txtItem.Text = txt3.Text
If txtItem.Text = "" Then Exit Sub ' Don't perform a drag for nothing
txtItem.Top = Y + txt3.Top
txtItem.Left = X + txt3.Left
txtItem.Drag
MyTxtId = 3 'houdt bij uit welk tekstvak er gesleept wordt
End Sub
Private Sub txtCommentaar_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
lstDraggedItems.Tag = "commentaar" ' deze houdt bij vanuit welk vak er gesleept wordt: commentaar betekent vanuit txtCommentaar
txtItem.Text = txtCommentaar.Text
If txtItem.Text = "" Then Exit Sub ' Don't perform a drag for nothing
txtItem.Top = Y + txtCommentaar.Top
txtItem.Left = X + txtCommentaar.Left
txtItem.Drag
End Sub |
[
Voor 5% gewijzigd door
Verwijderd op 22-07-2004 15:48
]