alles over je Palm Treo smartphone of PalmOS pda
|
Registreer | FAQ | Ledenlijst | Kalender | Berichten van vandaag | Zoeken |
#1
|
|||
|
|||
HB++ handler doesn't match any event
Hallo, ik ben weer eens vastgelopen....:
Ik heb een hoop knoppen, die 'Button' heten, en allemaal een index hebben Als ik op zon'n button klik, wil ik een routine 'Mover' aanroepen, en dan de naam van de knop in kwestie meegeven. Private Sub Button_Click (ByVal iIndex as Integer) Mover Button(iIndex) End Sub Private Sub Mover (ByVal b as Button) . . . End Sub Dus eenmaal in 'Mover' aangekomen, wil ik b zien als de knop die 'Mover' heeft aangeroepen. Maar als ik bovenstaande compileer krijg ik: frmMain.hbf (9) : error #2351 : handler doesn't match any event Wat doe ik fout? Dit is waarschijnlijk een no-brainer voor de kenner, maar ik zoek me suf... Alvast bedankt, Groet, Henk |
#2
|
||||
|
||||
In welke regel gaat het precies fout? Dit is gewoon wat debugging, iets wat elke ontwikkelaar zou moeten kunnen of leren.
Maar even een wilde gok: heb je een functie die Button heet? |
#3
|
||||
|
||||
Misschien moet je haakjes hebben rond je Mover funktie argument?
Private Sub Button_Click (ByVal iIndex as Integer) Mover ( Button(iIndex) ) End Sub |
#4
|
||||
|
||||
Citaat:
Mover ( Button(iIndex) )
|
#5
|
|||
|
|||
Het gaat fout in :
Private Sub Button_Click (ByVal iIndex as Integer) Die haakjes rond die Mover functie zijn niet het probleem. Als ik die Mover aanroep uit-comment dan is het probleem hetzelfde... Private Sub Button_Click (ByVal iIndex as Integer) 'Mover Button(iIndex) End Sub Het zal vast alleen wat debugging zijn, maar ik ben een beginner, en ik ben met vallen en opstaan aan het leren.... Heb ik een functie die Button heet? Ik dact het niet. Ik heb alleen een aantal buttons die 'Button' heten en een index hebben van 1 tot 16. Dus die Button(x) met index wil ik meenemen naar Mover... Gr Henk |
#6
|
||||
|
||||
Citaat:
Heb ik een functie die Button heet? Ik dact het niet.
|
#7
|
|||
|
|||
Als ik het helemaal terugreng naar:
Private Sub Button_Click(ByVal iIndex As Integer) End Sub Dan is de error nog hetzelfde. Dus dan is er geen sprake van een control die 'Button' heet... Dus dat is alleen maar het click-event van een aantal buttons met een index kiezen, en dan maakt HB zelf de code "Private Sub Button_Click(ByVal iIndex As Integer)"... Hoe kan het dan fout zijn???? Een bijna wanhopige aspirant programeur.... Gr, Henk |
#8
|
||||
|
||||
Wat Bram bedoelt: je buttons mogen geen "Button" heten. Verander de naam van je Button eens naar "But" ofzo (en verander de naam van je eventhandler dus ook naar But_Click).
Je moet (helaas) wel alle buttons bij langs. Het probleem is dat je de naam van een (aantal) object(en) hetzelfde hebt als de naam van een basistype (basiscontrol). Je object met de naam Button is van het type Button en dat mag niet. De compiler weet dan niet meer of properties/methodes/events bij jouw eigen button of bij het basistype button horen. Snap je het nog? Nee: dan snapt de compiler het ook niet meer . Gewoon de naam van je button(s) veranderen...
__________________
FBTV 2.2.6: De HiRes TV Gids voor PalmOS (27/03/07) nu met een nieuw narrow lettertype. Laat ontwikkeling / support van FBTV niet in de steek: FBTV is donateware! |
#9
|
|||
|
|||
Je hebt gelijk! Het volgende werkt wel!
Private Sub But_Click(ByVal iIndex As Integer) End Sub Bedankt mensen, voor jullie geduld. Ik begrijp sommige termen (nog) niet die jullie gebruiken. Ooit - dan hoop ik in staat te zijn een ander te helpen. Van dit prima forum leer ik een hoop! Groet, Henk |
#10
|
||||
|
||||
Citaat:
Oorspronkelijk geplaatst door StrataMan
.... en dan maakt HB zelf de code "Private Sub Button_Click(ByVal iIndex As Integer)"... Hoe kan het dan fout zijn????
HB++ heeft er blijkbaar voor gekozen om namen van objecten te controleren op invalid characters (zo mag een naam niet beginnen met een cijfer en zijn '@#$ etc. verboden en reserved keywords (zoals for, while, if), maar niet op namen van basistypes/controls. Dit is ook moeilijk, want als je zelf classes gaat maken (het wat moeilijkere programmeerwerk) is de eventhandler "Private Sub Button_Click(ByVal iIndex as Integer)" opeens wel weer geldig....
__________________
FBTV 2.2.6: De HiRes TV Gids voor PalmOS (27/03/07) nu met een nieuw narrow lettertype. Laat ontwikkeling / support van FBTV niet in de steek: FBTV is donateware! |