Botón
Última actualización
Última actualización
Control de entrada en el que se visualiza un texto y/o una imagen y que permite disparar, en tiempo de ejecución, una acción o un comando predefinido.
Para crearlo ejecutar la opción botón de la barra de controles de entrada del editor de formularios, hacer un clic con el botón izquierdo del ratón dentro del área del formulario y, sin soltar el botón del ratón, arrastrarlo hacia abajo y hacia la derecha hasta obtener el tamaño deseado. Soltar el botón del ratón para finalizar la creación del control.
Sus propiedades son:
Etiqueta alfanumérica que identifica al control. Este identificador será el que se usa para referenciarlo en los inspectores y en las propiedades de otros objetos.
Etiqueta alfanumérica que servirá como descriptor del control. Es el texto que se mostrará en el botón al usuario final de la aplicación si no se ha establecido ningún valor en la propiedad contenido.
Los botones admiten aceleradores del tipo Alt + Tecla, para ello podemos escribir antes de la letra que se desea usar como acelerador el símbolo &. Dicha letra en ejecución aparecerá destacada con un carácter de subrayado.
Ejemplo: Acepta&r ->
Nota |
Si al botón se le asigna también una tecla aceleradora será solamente funcional ésta, quedado invalidada la funcionalidad de alt + tecla. |
Podemos definir lel estilo privado que limita el acceso del usuario final al sub-objeto desde puntos donde no se haya programado el acceso al mismo.
Esta propiedad nos permite documentar el uso del control.
Muestra el tipo de control de que se trata. En este caso es botón, aunque podremos modificarlo. Si modificamos el tipo de control perderemos las propiedades específicas de éste.
Permite especificar un texto que se presentará al usuario final de la aplicación cuando pase el cursor del ratón sobre el control. Podemos definir un texto por cada idioma presente en el proyecto.
Permite que el control sea accesible cuando use el tabulador o el Intro para moverse de un control a otro dentro del formulario.
Permite especificar una condición para que el control sea visible. La condición se establecerá mediante una fórmula que podremos escribir usando el asistente para edición de fórmulas. Para ello pulsar el botón que aparece al editar esta propiedad.
Permite especificar una condición para que el control sea funcional. La condición se establecerá mediante una fórmula que podremos escribir usando el asistente para edición de fórmulas. Para ello pulsar el botón que aparece al editar esta propiedad.
Permite establecer el título que tendrá el control de cara al usuario final, éste se establecerá mediante una fórmula que podremos escribir usando el asistente para edición de fórmulas. Para ello pulsar el botón que aparece al editar esta propiedad. Si no se especificada nada en esta propiedad, se usará como título del control el dato introducido en la propiedad Nombre.
Los botones admiten aceleradores del tipo Alt + Tecla, para ello podemos escribir antes de la letra que se desea usar como acelerador el símbolo &. Dicha letra en ejecución aparecerá destacada con un carácter de subrayado.
Debemos de tener la precaución de no hacer coincidir dentro de un mismo contexto dos controles y/o subcontroles con la misma tecla aceleradora ya que, en el caso de suceder, no se disparará ninguno de ellos.
Aviso: Si en esta propiedad especificamos la tecla aceleradora no podremos especificar otra en la propiedad tecla aceleradora.
En esta propiedad seleccionaremos el color del botón. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y/o seleccionar otro color.
En esta propiedad seleccionaremos el color que tendrá el texto del botón. Junto al nombre del color se presenta una muestra del mismo, pulsar sobre ella para editarlo y o seleccionar otro color.
Esta propiedad permite hacer transparente el color del control o aplicar un color opaco al mismo. Se tomará el color establecido en la propiedad color de base.
Esta propiedad permite establecer la fuente que usará el control. Pulsar el botón que aparece al editar esta propiedad para abrir el selector de fuentes.
Permite declarar una tecla que al pulsarla en tiempo de ejecución disparará la acción o el comando asociada al control. Las teclas posibles son:
Ninguna: No se usará tecla aceleradora.
Retroceso.
Tabulador.
Return (Intro).
Escape.
Espacio.
Teclas de función: Desde F1 a F12.
Números: Del 0 al 9.
Letras: De la A a la Z, excepto Ñ y Ç.
Debemos de tener la precaución de no hacer coincidir dentro de un mismo contexto dos controles y/o subcontroles con la misma tecla aceleradora ya que, en el caso de suceder, no se disparará ninguno de ellos.
Esta propiedad nos permite establecer una tecla o combinación de teclas que, pulsadas simultáneamente junto con la declarada en la propiedad tecla aceleradora dispararán la acción o el comando asociado al control. Los valores posibles son:
Tecla: No se usará combinación de teclas.
Shift + Tecla: Para disparar la acción asociada al control se deberán pulsar simultáneamente la tecla Shift y la especificada en la propiedad tecla aceleradora.
Control + Tecla: Para disparar la acción asociada al control se deberán pulsar simultáneamente la tecla Control y la especificada en la propiedad tecla aceleradora.
Control + Shift + Tecla: Para disparar la acción asociada al control se deberán pulsar simultáneamente la combinación de las teclas Control, shift y la especificada en la propiedad tecla aceleradora.
Aviso: Si en esta propiedad especificamos la tecla aceleradora no podremos especificar otra en la propiedad ni en la propiedad contenido.
Debemos ser conscientes de que los sistemas operativos, cuando se pulsan los aceleradores de un botón, provocan que se dispare la acción del botón, pero no le pasan el foco; es decir, el foco se mantiene en el control que lo tenía por lo que, si dicho control tiene asociado un evento de pérdida de foco, no se ejecutará.
Permite activar/desactivar el efecto 3D del botón.
Permite incluir dentro del botón un dibujo declarado en el proyecto o de un proyecto heredado.
Permite establecer cuál será el tamaño del dibujo dentro del botón. Los valores posibles son:
Pequeño: El dibujo seleccionado será mostrado dentro del botón, guardando la proporción alto/ancho original, con un tamaño de 16×16 píxels.
Grande: El dibujo seleccionado será mostrado dentro del botón, guardando la proporción alto/ancho original, con un tamaño de 32×32 píxels.
Original: El dibujo seleccionado será mostrado dentro del botón, guardando la proporción alto/ancho original, con su tamaño original.
Si se activa esta opción, el botón atrapará la pulsación de la tecla intro en el formulario. En un formulario, por defecto es el botón “Aceptar” (o “Borrar”, si no existe el anterior) el que se acciona cuando pulsamos la tecla intro. Pero si a otro botón le activamos esta propiedad, éste será el que se dispare cuando el usuario pulse intro.
El botón que tenga activada esta propiedad puede ser configurado para que dispare cualquier comando que admitan los botones.
El sistema siempre asignará un botón como botón por defecto, esto es, botón que será pulsado si el usuario pulsa intro.
Si existe más de un botón que tenga activa esta propiedad, será el último en el orden de tabulación el que realmente atrape la pulsación del intro.
Si hay varios botones, ninguno dispara el comando “aceptar” y ninguno tiene activada la propiedad “botón por defecto” a verdadero. El intro lo atrapará el primero que encuentre en el orden tab (si sólo hay un botón, ese será el que dispare).
Si hay varios botones, y uno de ellos dispara el comando “aceptar”, éste atrapará el intro siempre, independientemente del orden de tabulación de los botones.
Si hay varios botones (haya botón “aceptar” o no en el formulario) y uno de los botones tiene activada la propiedad “botón por defecto”, entonces éste será el que atrape la pulsación del intro.
El botón por defecto de un formulario en función del estilo usado, visualmente es distinguido del resto:
En la captura de pantalla anterior es el botón “Aceptar” el botón por defecto del formulario.
Permite establecer el comando o la acción que disparará el botón. Los valores posibles son:
Guarda la ficha en disco y cierra el formulario.
Cancela los cambios realizados en el formulario y lo cierra. En el caso de que en el formulario se haya activado el estilo
bloqueo duro, este comando cancelará solamente las modificaciones realizadas en la ficha editada y no aseguradas en disco. Las modificaciones realizadas en otras fichas, en plurales o registros maestros actualizados por ejemplo, no serán deshechas, salvo, claro está, aquellas actualizaciones en las que intervenga el campo o campos cuya modificación será cancelada.
Borra del disco la ficha editada y cierra el formulario.
Permite dar un alta en una tabla maestra de la actual. Al seleccionar este comando aparecerán las propiedades siguientes:
Campo: Permite seleccionar el campo enlazado a la tabla en la que queremos crear el registro.
Objeto: Permite seleccionar el formulario asociado a esa tabla de datos a utilizar para crear el registro.
Permite modificar una ficha de una tabla maestra de la actual. Al seleccionar este comando aparecerán las propiedades siguientes:
Campo: Permite seleccionar el campo enlazado a la tabla en la que queremos modificar el registro.
Objeto: Permite seleccionar el formulario asociado a esa tabla de datos a utilizar para editar el registro.
Permite disparar un localizador de una tabla maestra de la actual. Al seleccionar este comando aparecerán las propiedades siguientes:
Campo: Permite seleccionar el campo enlazado a la tabla en la que queremos localizar el registro.
Objeto: Permite seleccionar el localizador asociado a esa tabla de datos a utilizar para buscar el registro.
Si el usuario final selecciona un registro en el localizador disparado, el registro será capturado en la ficha de origen, con lo que el campo enlazado apuntará al registro seleccionado.
Permite disparar una acción declarada en el proyecto actual o en un proyecto heredado. La acción a disparar deberá ser seleccionada en la propiedad objeto.
Permite disparar un menú declarado en el proyecto actual o en un proyecto heredado. El menú a disparar deberá ser seleccionado en la propiedad objeto.
Permite disparar un proceso declarado en el proyecto actual o en un proyecto heredado. El proceso a disparar deberá ser seleccionado en la propiedad objeto.
Podremos disparar cualquier proceso sin origen, además, si el formulario está asociado a una tabla, podremos disparar procesos cuyo origen sea una ficha de la tabla asociada al formulario.
Permite disparar un manejador de evento declarado en el formulario en curso. El evento a disparar deberá ser seleccionado en la propiedad objeto.
Permite visualizar en el mismo formulario un registro anterior o un registro siguiente al actual. Para ello es necesario que en la tabla asociada al formulario exista un campo enlazado a hermano contiguo. El campo enlazado deberá ser seleccionado en la propiedad campo.
Permite visualizar el formulario que se indique en la propiedad objeto en modal. Es requisito indispensable que el origen del subformulario sea el mismo que el del formulario en curso.
Permite visualizar el formulario que se indique en la propiedad objeto en forma de popup. Es requisito indispensable que el origen del subformulario sea el mismo que el del formulario en curso. No se recomienda usar formularios popup en aplicaciones que vayan a ser ejecutadas en dispositivos móviles Android o iOS.
Guarda la ficha en disco y cierra el formulario, previa petición de confirmación por parte del usuario.
Cancela los cambios realizados en el formulario y lo cierra, previa petición de confirmación por parte del usuario. En el caso de que en el formulario se haya activado el estilo bloqueo duro, este comando cancelará solamente las modificaciones realizadas en la ficha editada y no aseguradas en disco. Las modificaciones realizadas en otras fichas, en plurales o registros maestros actualizados por ejemplo, no serán deshechas, salvo, claro está, aquellas actualizaciones en las que intervenga el campo o campos cuya modificación será cancelada.
Borra del disco la ficha editada y cierra el formulario, previa petición de confirmación por parte del usuario.
Este comando solamente puede ser usado en formularios en los que se ha activado el estilo bloqueo duro. Este comando deshará la transacción, es decir, que se desharán todas las operaciones de escritura realizadas tanto directa como indirectamente desde ese formulario. Este comando equivale al comando de instrucción de proceso deshacer transacción.
Este comando solamente puede ser usado en formularios en los que se ha activado el estilo bloqueo duro. Este comando, previa confirmación por parte del usuario, deshará la transacción, es decir, que se desharán todas las operaciones de escritura realizadas tanto directa como indirectamente desde ese formulario. Este comando equivale al comando de instrucción de proceso deshacer transacción.
Este comando mueve el foco al siguiente control en el orden tab. El uso de un botón con este comando será útil en el caso de que queramos usar para el avance del foco una tecla o una combinación de teclas distintas a la estándar (Tab).
En el caso de la tecla Intro para su uso en avance de control hemos de hacer uso de la propiedad botón por defecto y no asignarla como tecla aceleradora. La tecla aceleradora Return se refiere a la tecla Return del teclado alfanumérica, ya que el sistema operativo gestiona esa tecla de forma independiente a la tecla Return en el teclado numérico.
Haciendo uso de la propiedad botón por defecto conseguimos que al aceptar de una de las dos formas, el sistema haga la pulsación del botón que tenga asignada la propiedad.
Este comando mueve el foco al control anterior en el orden tab. El uso de un botón con este comando será útil en el caso de que queramos usar para el retroceso del foco una tecla o una combinación de teclas distintas a la estándar (Shift + Tab).
Este comando es específico para altas y solamente es funcional en formularios modales (cuadro de diálogo). Acepta los datos introducidos en el formulario pero no lo cierra, lo mantiene abierto para que pueda darse de alta una nueva ficha. En el caso de ser usado en un formulario de modificación, este comando simplemente guardará cambios y lo cerrará. Este comando es muy útil para realizar altas masivas en una tabla.
Botón específico cuando hacemos uso de la herencia inversa en tablas de extensión. Para ampliar información sobre su uso, ver el punto "herencia inversa en tablas de extensión" del capítulo dedicado a la herencia.
Botón específico cuando hacemos uso de la herencia inversa en tablas de extensión. Para ampliar información sobre su uso, ver el punto herencia inversa en tablas de extensión del capítulo dedicado a la herencia.
Permite establecer cómo se comportará el control dentro del layout. Los valores posibles son:
Por defecto: Asume el comportamiento que tiene establecido el tipo de control en el sistema. Los botones , por defecto, no crecen en anchura.
Fijo: El ancho del control será fijo, no variará para adaptarse a la anchura del formulario.
Proporcional: El ancho del control crecerá con el formulario siguiendo las mismas proporciones establecidas en el editor con respecto al resto de los controles del layout.
Permite establecer cómo se comportará el control dentro del layout. Los valores posibles son:
Por defecto: Asume el comportamiento que tiene establecido el tipo de control en el sistema. Los botones, por defecto, no crecen en altura.
Fijo: La altura del control será fija, no variará para adaptarse a la altura del formulario.
Proporcional: La altura del control crecerá con el formulario siguiendo las mismas proporciones establecidas en el editor con respecto al resto de los controles del layout.
Permite asignar un menú de contexto al control. Los valores posibles son:
Ninguno: En ejecución el control carecerá de menú de contexto.
Por defecto: En ejecución se usará el menú de contexto por defecto del control. No todos los controles por defecto tienen menú de contexto.
Personalizado: Permite indicar que el control usará un objeto menú declarado en el proyecto de aplicación o en cualquier proyecto heredado.
Este parámetro solamente estará disponible si en el parámetro anterior hemos seleccionado el valor personalizado. En él seleccionaremos el objeto menú declarado en el proyecto de aplicación o en cualquier proyecto heredado que queremos usar como menú de contexto del control.
Muestra la anchura en píxels del control; es posible modificar su contenido o bien escribiendo directamente un número o bien usando los microscrollers: , que permiten aumentar/disminuir en una unidad el valor actual.
Muestra la altura en píxels del control; es posible modificar su contenido o bien escribiendo directamente un número o bien usando los microscrollers: , que permiten aumentar/disminuir en una unidad el valor actual.
Muestra la posición del control, en pixels, en el eje X (horizontal) dentro del formulario.Es posible modificar su contenido o bien escribiendo directamente un número o bien usando los microscrollers: , que permiten aumentar/disminuir en una unidad el valor actual.
Muestra la posición del control, en pixels, en el eje Y (vertical) dentro del formulario.Es posible modificar su contenido o bien escribiendo directamente un número o bien usando los microscrollers: , que permiten aumentar/disminuir en una unidad el valor actual.
Ejemplo: “Acepta&r” ->