Herencia de formularios

17/11/2004 - 17:33 por Ricard | Informe spam
Gracias por leer el mensaje.

Tengo tres formularios abuelo, padre e hijo.

El padre hereda del abuelo (todo correcto).

El hijo hereda del padre, aparece el mensaje de error "Excepcion al crear
una instancia de Padre No se encontro el constructor" solo cuando
solicito el diseño del formulario . Cuando ejecuto funciona.


Los constructores del abuelo son
public sub New()
public sub New(byval S1 as string, byval S2 as string)

Los constructores del padre :
public sub New()
public sub New(byval S1 as string, byval S2 as string)

Los he cambiado de public a protected, igual

El constructor del hijo
public sub New(byval S1 as string, byval S2 as string)
mybase.new(S1,S2)

Me puedes indicar que estoy haciendo mal o que me falta por controlar para
que pueda trabajar con el hijo en tiempo de diseño

Saludos,
Ricardo

Preguntas similare

Leer las respuestas

#1 Erich Bühler
18/11/2004 - 00:31 | Informe spam
Hola Rocard,
intenta hacer la herencia haciendo botón derecho sobre el proyecto y luego
seleccionando crear formulario heredado. Esto te asegurará que se incluya
todo lo necesario. Luego puedes comparar el código generado con lo que has
escrito a ver que te ha faltado.

Un saludo!!!
Erich Bühler (MVP)
www.vblibros.com



"Ricard" wrote in message
news:
Gracias por leer el mensaje.

Tengo tres formularios abuelo, padre e hijo.

El padre hereda del abuelo (todo correcto).

El hijo hereda del padre, aparece el mensaje de error "Excepcion al crear
una instancia de Padre No se encontro el constructor" solo cuando
solicito el diseño del formulario . Cuando ejecuto funciona.


Los constructores del abuelo son
public sub New()
public sub New(byval S1 as string, byval S2 as string)

Los constructores del padre :
public sub New()
public sub New(byval S1 as string, byval S2 as string)

Los he cambiado de public a protected, igual

El constructor del hijo
public sub New(byval S1 as string, byval S2 as string)
mybase.new(S1,S2)

Me puedes indicar que estoy haciendo mal o que me falta por controlar para
que pueda trabajar con el hijo en tiempo de diseño

Saludos,
Ricardo

Respuesta Responder a este mensaje
#2 Ricard
18/11/2004 - 09:44 | Informe spam
Hola Erich,

Gracias por contestar.
Lo que me estas sugiriendo ya lo probe antes de abrir esta discusion, de
todos modos lo he reintentado y el mismo mensaje.

"Excepcion al crear una instancia de PADRE. No se encontro un constructor
en el tipo Proyecto.Padre"

Estoy utilizando VB 2002

Dentro de padre, he creado propiedades y procedimientos que no estan en el
formulario abuelo, no creo que esto afecte, pero informo.

Saludos
Ricard



"Erich Bühler" wrote:

Hola Rocard,
intenta hacer la herencia haciendo botón derecho sobre el proyecto y luego
seleccionando crear formulario heredado. Esto te asegurará que se incluya
todo lo necesario. Luego puedes comparar el código generado con lo que has
escrito a ver que te ha faltado.

Un saludo!!!
Erich Bühler (MVP)
www.vblibros.com



"Ricard" wrote in message
news:
> Gracias por leer el mensaje.
>
> Tengo tres formularios abuelo, padre e hijo.
>
> El padre hereda del abuelo (todo correcto).
>
> El hijo hereda del padre, aparece el mensaje de error "Excepcion al crear
> una instancia de Padre No se encontro el constructor" solo cuando
> solicito el diseño del formulario . Cuando ejecuto funciona.
>
>
> Los constructores del abuelo son
> public sub New()
> public sub New(byval S1 as string, byval S2 as string)
>
> Los constructores del padre :
> public sub New()
> public sub New(byval S1 as string, byval S2 as string)
>
> Los he cambiado de public a protected, igual
>
> El constructor del hijo
> public sub New(byval S1 as string, byval S2 as string)
> mybase.new(S1,S2)
>
> Me puedes indicar que estoy haciendo mal o que me falta por controlar para
> que pueda trabajar con el hijo en tiempo de diseño
>
> Saludos,
> Ricardo
>



Respuesta Responder a este mensaje
#3 Ricard
18/11/2004 - 12:27 | Informe spam
¡¡¡¡¡ LO ENTENDI !!!!!

Cada vez que se hereda un formulario procede a ejecutar toda la logica del
padre.

Si como es mi caso voy pasando informacion por variables y ejecuto comandos
contra n BD's, estos en diseño no tienen informacion, en consecuencia
intententan realizar tareas, siendo el resultado errores de ODBC o comandos
sql incorrectos.

Para solventar este problema, en el modulo incial, creo las constantes de
conexión, y en el formulario padre he colocado en el load

if desingmode = true then
exit sub
end if

¡¡¡¡ FUNCIONA !!!!

Gracias a todos
Ricard


"Ricard" wrote:

Hola Erich,

Gracias por contestar.
Lo que me estas sugiriendo ya lo probe antes de abrir esta discusion, de
todos modos lo he reintentado y el mismo mensaje.

"Excepcion al crear una instancia de PADRE. No se encontro un constructor
en el tipo Proyecto.Padre"

Estoy utilizando VB 2002

Dentro de padre, he creado propiedades y procedimientos que no estan en el
formulario abuelo, no creo que esto afecte, pero informo.

Saludos
Ricard



"Erich Bühler" wrote:

> Hola Rocard,
> intenta hacer la herencia haciendo botón derecho sobre el proyecto y luego
> seleccionando crear formulario heredado. Esto te asegurará que se incluya
> todo lo necesario. Luego puedes comparar el código generado con lo que has
> escrito a ver que te ha faltado.
>
> Un saludo!!!
> Erich Bühler (MVP)
> www.vblibros.com
>
>
>
> "Ricard" wrote in message
> news:
> > Gracias por leer el mensaje.
> >
> > Tengo tres formularios abuelo, padre e hijo.
> >
> > El padre hereda del abuelo (todo correcto).
> >
> > El hijo hereda del padre, aparece el mensaje de error "Excepcion al crear
> > una instancia de Padre No se encontro el constructor" solo cuando
> > solicito el diseño del formulario . Cuando ejecuto funciona.
> >
> >
> > Los constructores del abuelo son
> > public sub New()
> > public sub New(byval S1 as string, byval S2 as string)
> >
> > Los constructores del padre :
> > public sub New()
> > public sub New(byval S1 as string, byval S2 as string)
> >
> > Los he cambiado de public a protected, igual
> >
> > El constructor del hijo
> > public sub New(byval S1 as string, byval S2 as string)
> > mybase.new(S1,S2)
> >
> > Me puedes indicar que estoy haciendo mal o que me falta por controlar para
> > que pueda trabajar con el hijo en tiempo de diseño
> >
> > Saludos,
> > Ricardo
> >
>
>
>
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida