| Creando un control ActiveX (OCX) |
| Dr. Crow Webmaster de Dr. Crow WEB |
|
Bueno, no vamos a teorizar demasiado, porque es aburrido. Para crear un control OCX, vamos a abrir VB como todos los días y vamos a crear un proyecto "EXE Estandar" y le vamos a agregar uno de tipo "Control ActiveX". De tal forma que nos quede formado un Grupo de Proyectos que los incluya a los dos. El control que crearemos será uno que nos permita apagar win, reiniciarlo, etc.
Seleccionamos la propiedad "InvisibleAtRunTime" y la ponemos en true, ya que nuestro control no será visible durante la ejecución del proyecto en el que se encuentre. Podemos ver que nuestro control es como un form normal, pero sin bordes, ahora inserta un image (Image1) y ponle como picture un icono que te parezca representativo de lo que va a hacer nuestro control. En el evento "Resize" del UserControl pon lo siguiente...
Esto hará que el control se vea en el form como si fuera solo el icono del image (igual a lo que pasa con un control Timer). Ahora debemos crear los Metodos que poseerá nuestro control, para eso ve al menú "Complementos", de ahí a "Administrador de Complementos" y haz doble clic sobre "Asistente para interfaz de controles ActiveX de VB" de forma que al lado diga "Cargado", pulsa "Aceptar". El "Asistente para interfaz de controles ActiveX de VB" es un asistente que nos guiará paso a paso en la asignación de métodos para nuestro control. Otra vez ve a "Complementos", allí te aparecerá una nueva opción, que es el asistente. Ábrelo y pulsa "Siguiente". En el cuadro "Nombres Disponibles" tienes todos los métodos mas comunes que puedes insertar, en "Nombres Seleccionados" no dejes nada y pulsa "Siguiente". En esta nueva ventana podemos definir métodos personalizados. Clic en "Nuevo" y crea estos métodos... 1) "Dialogo_Apagar" No te olvides de poner a cada uno como "Metodo" en el cuadro "Tipo". Dale a "Siguiente", en el cuadro siguiente no hacemos nada, así que "Siguiente" de nuevo. En la ventana en la que nos encontramos ahora podemos agregarle una descripción a cada cosa y designar que valor retorna una función. Pongan una descripción a cada método si quieren, aunque los nombres que tienen son bastante descriptivos. No cambien nada en lo de "Tipo Devuelto". Denle a "Siguiente" y a "Finalizar". Vamos al código de control. Tenemos que declarar las APIs que realizaran las operaciones necesarias: Esta nos permitirá mostrar el dialogo de "Apagar el Sistema":
Esta ejecutara las demás operaciones:
Ya tenemos las declaraciones, ahora fíjense abajo y vera que dice:
Y así para las demás funciones.
No elimines los comentarios ni el resto del código que haya generado automáticamente VB. FELICIDADES!!!!! nuestro OCX esta casi listo Ahora vamos a darle mas "facha" a nuestra creación... Pon su propiedad "CanGetFocus" a False (nuestro control no obtiene el foco porque es invisible). Ve al Form1, borra el que control que pusiste antes y el código que escribiste (si escribiste algo) e inserta uno nuevo. Pon en el form varios botones (uno que llame a cada funcion del OCX). Guarda todo y pruébalo (recuerda que apagara tu maquina así que GUARDA todo). ¿Todo OK? Compila y listo calixto. |
|
WWW.ELGURUPROGRAMADOR.COM.AR
|