Considerando lo antedicho, resulta que casi nunca agregarás un registro en blanco a una tabla, ya que querrás tener control de que no se omitan completar determinados valores para los campos.
Además tu interfaz de usuario será mucho más interesante si cargas los datos para los nuevos registros desde un formulario de alta de datos en lugar de hacerlo desde un grid.
Con esto estamos entrando en lo que habitualmente se conoce como ABM: Altas, Bajas y Modificaciones.
Vamos a comenzar a programar:
Antes de crear la clase para el botón nuevo, vamos a necesitar crear una clase COMMANDGROUP que contendrá los botones NUEVO, EDITAR, ELIMINAR, BUSCAR, FILTRAR, IMPRIMIR que son las tareas habituales que realizamos sobre las tablas.
Esta clase COMMANDGROUP te permitirá agrupar los botones de comando en un solo control que utilizarás con bastante frecuencia, aunque también necesitaremos crear botones de comando individuales.
Creando la clase commanddroup
Desde el administrador de proyectos ve a la pestaña claes, selecciona la librería de clases que creaste al definir la clase de tu form y dale clic a nuevo.
Como la vez anterior se abre la pantallita para definir la clase: Debes elegir un nombre para tu clase P.Ej. miCommandgroup, en donde dice basado en selecciona la opción COMMANDGROUP, y luego verifica que donde dice almacenar en: se encuentre especificada tu librería de clases. Luego das clic en aceptar y se abrirá el diseñador de clases, con un grupo de comando con dos botones.
PERSONALIZANDO LA CLASE COMMAND GROUP
Desde el Diseñador de Clases puedes manipular el contenedor a tu gusto hasta que el mismo tenga la apariancia que tú deseas.
En mi caso te sugiero que teniendo seleccionado el contenedor commandgroup (no los botones) hagas clic derecho sobre el para que se muestre el cuadro de propuedades, luego busca la propiedad BUTTONCOUNT y establece el valor en 7, es decir 7 botones.
Los botones te aparecerán ordenados en forma vertical, te sugiero que hagas lo siguiente:
Selecciona todos los botones (los 7) y desde el cuadro de propiedades cambia los valores a las siguientes propiedades:
CAPTION=(Nada) ; HEIGHT=25 ; WIDTH: 25
Luego ordenas tus botones en forma horizontal de la forma que más te guste, para ello deberás modificar el tamaño de tu contenedor COMMANDGROUP. Una vez que hayas acomodado tus botones selecciónalos uno por uno y cambia las siguientes propiedades:
NAME: Nuevo / Editar / Eliminar / Buscar / Filtrar / Imprimir / Otro
PICTURE: Elije un ícono (bmp) de los que tienes en tu directorio de VFP para cada botón.
TOOLTIPTEXT: Nuevo Registro / Edita Registro / Elimina... el texto que quieras que aparezca sobre cada botón cuando sitúes el mouse sobre él.
Si lo deseas he subido las imágenes para los botones y 2 ejemplos para que los descargues desde
http://rapidshare.com/files/419186895/COMMANDGROUP.rar.htmlOBS: A las imágenes (bmp, msk) deberás agregarlas a tu proyecto desde la pestaña otros: otros archivos. Busca en la ayuda "Mejorar la presentación de controles" para aprender el uso de archivos msk.
OBS2: Para que la propiedad TOOLTIPTEXT funcione, debes modificar la clase miform, buscar la propiedad SHOWTIPS y ponerla en .T.
Ya tienes creada tu clase COMMANDGROUP.
Ahora necesitamos agregar el código a cada botón.
Si te parece y si no has tenido inconvenientes finaliza la presente pregunta y haz la siguiente: Asignar código a Botones de Clase