Para ello usamos el contructor del objeto que queramos crear, mediante la siguiente sentencia:
ObjetoTipoNuevo= New ObjetoTipo (contenedor) as "Nombre_Observador_de_Eventos"
Ejemplo:
Imaginaos que tengo un juego donde, necesito crear unas imágenes en tiempo de ejecución de los objetos que va cogiendo el personaje.
El principio empieza sin ningún objeto, luego va cogiendo objetos y los tiene que ir mostrando.
Bien para mostrarlos crearemos un array de controles PictureBox.
Cada vez que coja un objeto, se creará un pictureboxtemporal, con los datos del objeto recogido, y se le añade al array, para que se muestren:
La forma genérica seria:
Le tenemos que indicar donde va a estar contenido y el nombre del observador que tiene asociado.
Ejemplo:
Código fuente:
-
-
Descarga del código fuente: enlace de box.com
Nota:
Mochila es un control contenedor, por ejemplo un HPanel
ObjetosEnMochilas: es el observador que cuando se produzca un evento se ejecutará el código (por ejemplo _click)
Es muy importante usar la propiedad .tag de los nuevos objetos, para añadir información del objeto, y luego usarlo mediante la orden Last.Tag (vease: http://gambaswiki.org/wiki/lang/last?l=es )
Nota2:
Se podría crear esto mismo, creando varios controles PictureBox y ocultandolos (con la propiedad .visible=false), pero para hacerlo de esta forma necesitamos saber el numero de objetos máximo que puede tener para crear dichos controles previos.
muy simple y sencillo, el ejemplo de controles dinamicos..
ResponderEliminarBuen ejemplo, pero hubiera sido mas facil permitir descarga del proyecto que de un fichero texto.
ResponderEliminar