Dag Tweakers,
ik ben een VB6 applicatie aan het (her)schrijven die Outlook synchroniseert met Webcalendar (via HTTP en PHP serverside). Nu had ik de volgende vraag over VB6: Kan ik vanuit een class events afvangen die uit een form component komen? Ik zou wat behaviour aan een listview van afspraken willen hangen (bvb dubbelklik opent ofwel de appointment in Outlook of een eigen venster als het een Webcalendar appointment is, afhankelijk van type object). Nu zal ik deze lijst op verschillende plaatsen gebruiken in de applicatie, en zou ik de code willen localiseren.
In java zou ik class ListView hiervoor extenden en event handlers in het object zelf steken, maar het lijkt me dat dit niet kan in VB6 (correct me if i'm wrong). Wat ik nu dus zou willen doen is een AppointmentList class schrijven met wat interne functies en een WithEvents variabele LV (voor listview). Dan zou ik in mijn diverse forms een listview en een AppointmentList creëeren, en die listview in het AppointmentList stopppen. Ik zou dan willen dat de AppointmentList de events van de listview opvangt. Ik heb dit nu als volgt gedaan maar de event handlers worden niet uitgevoerd:
Weet iemand hoe ik dit zou moeten aanpassen? Veel dank op voorhand!
ik ben een VB6 applicatie aan het (her)schrijven die Outlook synchroniseert met Webcalendar (via HTTP en PHP serverside). Nu had ik de volgende vraag over VB6: Kan ik vanuit een class events afvangen die uit een form component komen? Ik zou wat behaviour aan een listview van afspraken willen hangen (bvb dubbelklik opent ofwel de appointment in Outlook of een eigen venster als het een Webcalendar appointment is, afhankelijk van type object). Nu zal ik deze lijst op verschillende plaatsen gebruiken in de applicatie, en zou ik de code willen localiseren.
In java zou ik class ListView hiervoor extenden en event handlers in het object zelf steken, maar het lijkt me dat dit niet kan in VB6 (correct me if i'm wrong). Wat ik nu dus zou willen doen is een AppointmentList class schrijven met wat interne functies en een WithEvents variabele LV (voor listview). Dan zou ik in mijn diverse forms een listview en een AppointmentList creëeren, en die listview in het AppointmentList stopppen. Ik zou dan willen dat de AppointmentList de events van de listview opvangt. Ik heb dit nu als volgt gedaan maar de event handlers worden niet uitgevoerd:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| 'In formulier:
ListView1.View = lvwReport
Dim aplist As AppointmentList
Set aplist = New AppointmentList
Call aplist.setListView(ListView1)
'In AppointmentList:
Private WithEvents LV As listview
Function setListView(ByRef listview As listview)
Set LV = listview
End Function
Private Sub LV_Click()
MsgBox ("row was clicked")
End Sub |
Weet iemand hoe ik dit zou moeten aanpassen? Veel dank op voorhand!