• Domingo 22 de Diciembre de 2024, 13:21

Autor Tema:  "Heredando" de una clase más  (Leído 1622 veces)

kaidok

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
"Heredando" de una clase más
« en: Lunes 17 de Noviembre de 2008, 13:00 »
0
Ahora mismo para algunos de los formularios que uso en mi aplicación guardo los siguientes datos:

Public InitialWidth As Integer = Me.Width
    Public InitialHeight As Integer = Me.Height
    Public InitialLeft As Integer = Me.Left
    Public InitialTop As Integer = Me.Top

La idea sería tener una clase padre de la que todos los formularios pudieran acceder a estas variables en vez de tener que estar definiendo estas variables para cada método, el problema está en que VB.NET sólo permite la herencia simple y los formularios ya heredan de la clase Form.

Con interfaces que yo sepa no se puede hacer ya que las variables no son permitidas en la declaración de una interface, que es lo que permite disponer de un tipo de "herencia múltiple". Las interfaces sólo permiten métodos, eventos, propiedades o definiciones de tipo.

¿Alguna idea de cómo podría arreglar este asunto? ¿O resulta imposible?

sergios_

  • Nuevo Miembro
  • *
  • Mensajes: 20
  • Nacionalidad: es
    • Ver Perfil
    • http://masprogramacionymenosprozac.blogspot.com
Re: "Heredando" de una clase más
« Respuesta #1 en: Lunes 17 de Noviembre de 2008, 16:04 »
0
Hola Kaidok,

No se si es posible, pero se me ocurre que podrías definir una clase que herede todos los componentes de "Form" y añada las variables que tu deseas tener. Algo así:

Código: Text
  1.  
  2. Class FormModified
  3.     Inherits Form
  4.     Private InitialWidth as Integer
  5.     ...
  6. End Class
  7.  
  8.  

Después modificas las definiciones de tus formularios de forma que en vez de pertenecer a la clase "Form" pertenezcan a la clase "FormModified". Esto último es lo que no sé cuanto puede costarte.

Si lo pruebas y te funciona me gustaría saberlo porque a lo mejor puede ser útil en algunos casos.

Un saludo
============================
"Si sale, sale. Si no sale, hay que volver a empezar.
Todo lo demás son fantasías." - Edouard Manet

http]

kaidok

  • Miembro activo
  • **
  • Mensajes: 33
    • Ver Perfil
Re: "Heredando" de una clase más
« Respuesta #2 en: Lunes 17 de Noviembre de 2008, 16:16 »
0
Pues sí, así funciona. Muchas gracias  :lol: