Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

VB6 Problema Usercontrol ed evento custom

14 views
Skip to first unread message

Andrea [Work]

unread,
Dec 28, 2009, 8:25:17 AM12/28/09
to
Salve a tutti,
ho dei problemi con un controllo utente che non � altro che una textbox
"estesa".

Per sempicit� se creo un UC nuovo con questo codice:
---
1)
Event SearchRequest(Testo As String)
Private Sub Text1_Validate(Cancel As Boolean)
RaiseEvent SearchRequest(Text1.Text)
End Sub
---

Aggiungo con l'autocomposizione:
---
2)
Event SearchRequest(Testo As String)
'Dichiarazioni di eventi:
Event Validate(Cancel As Boolean) 'MappingInfo=Text1,Text1,-1,Validate

Private Sub Text1_Validate(Cancel As Boolean)
RaiseEvent Validate(Cancel)
RaiseEvent SearchRequest(Text1.Text)
End Sub
---

Ed ancora tutto bene.
Se creo un nuovo UC su un progetto sempre vuoto, subito usando
l'autocomposizione (senza fare a mano), che crea questo codice:
---
3)
'Dichiarazioni di eventi:
Event Validate(Cancel As Boolean) 'MappingInfo=Text1,Text1,-1,Validate
Event SearchRequest(Testo As String)

Private Sub Text1_Validate(Cancel As Boolean)
RaiseEvent Validate(Cancel)
End Sub
---

Mi da un errore alla pressione di F5:
"Interfaccia non valida per l'implementazione"

Il codice � praticamente uguale al 2), anzi manca un raise, che se
aggiungo, all'F5 poi va in crash VB6.

E' per caso un bug noto o che? Ho installato il SP5.

Andrea [Work]

unread,
Dec 28, 2009, 8:38:49 AM12/28/09
to
Il Mon, 28 Dec 2009 13:25:17 GMT, Andrea [Work] ha scritto:

> E' per caso un bug noto o che? Ho installato il SP5.

Col SP6 pare permanere il problema.

Andrea [Work]

unread,
Dec 28, 2009, 10:16:22 AM12/28/09
to
Il Mon, 28 Dec 2009 13:25:17 GMT, Andrea [Work] ha scritto:

> Mi da un errore alla pressione di F5:
> "Interfaccia non valida per l'implementazione"
>
> Il codice � praticamente uguale al 2), anzi manca un raise, che se
> aggiungo, all'F5 poi va in crash VB6.

Allora ho trovato questo:
http://www.vbmonster.com/Uwe/Forum.aspx/cntr-creation/195/Not-a-valid-interface-for-Implements

In pratica facendo una breve prova, se tolgo il Validate da evento mappato
della textbox, questo viene comunque gestito dallo UserControl stesso.

Da cos�


Event Validate(Cancel As Boolean) 'MappingInfo=Text1,Text1,-1,Validate
Private Sub Text1_Validate(Cancel As Boolean)

ValidaInput 'mia routine di gestione
RaiseEvent Validate(Cancel)
End Sub

A cos�
'Event Validate(Cancel As Boolean) 'MappingInfo=Text1,Text1,-1,Validate


Private Sub Text1_Validate(Cancel As Boolean)

validaInput
'RaiseEvent Validate(Cancel)
End Sub

Pare funzionare, se trovo altri problemi far� sapere.

0 new messages