@...GET PUSHBUTTON Crea un objeto Get consistente en un botón y lo muestra en pantalla ------------------------------------------------------------------------------ Sintaxis @ <nFila>, <nColumna> GET <lVar> PUSHBUTTON [CAPTION <cTítulo>] [MESSAGE <cMensaje>] [WHEN <lCondiciónPrevia>] [VALID <lCondiciónPosterior>] [COLOR <cCadenaColor>] [FOCUS <fbloque>( [STATE <bBloque>] [STYLE <cEstilo>] [SEND <mensaje>] [GUISEND <mensajeGUI>] [SIZE X <nTamañoX> Y <nTamañoY>] [CAPOFF X <nTítDespX> Y <nTítDespY>] [BITMAP <cMapaBits>] [BMPOFF X <nMapaBitsDespX> Y <nMapaBitsDespY>] Argumentos <nFila> y <nColumna> especifican las coordenadas de pantalla para el botón y su título. No se visualizarán los objetos que excedan de los límites de la pantalla. GET <lVar> especifica el nombre de la variable asociada al mandato GET. <lVar> puede contener un valor de cualquier tipo, pero al retornar de READ siempre tomará el valor lógico falso (.F.). El propósito de <lVar> es proporcionar un espacio en GetList para el botón. CAPTION <cTítulo> especifica una cadena de caracteres que describe en pantalla, de forma concisa, el significado del GET. Existen dos diferencias entre CAPTION y SAY. La primera es que el título aparece cada vez que el GET se muestra en pantalla. La segunda es que el título y su posición en pantalla se almacenan en el objeto Get. Esto permite que el GET pueda recibir la entrada del usuario al hacer clic en el título con el botón izquierdo del ratón. Por defecto, el título aparece dentro del borde del botón. Es posible utilizar las variables capRow y capCol para modificar la posición en pantalla del título. Si en la cadena de caracteres del título está presente el carácter &, el carácter que le sigue se utiliza como tecla aceleradora del botón. La tecla aceleradora es un método rápido para pasar el foco de entrada al botón. En las teclas aceleradoras no se distingue entre mayúsculas y minúsculas. MESSAGE <cMensaje> especifica una cadena de caracteres que aparece en la barra de la línea de estado del sistema Get cuando el GET tiene el foco de entrada. Normalmente, contiene una breve descripción o una respuesta al usuario acerca del GET. Consulte el mandato READ para obtener detalles del funcionamiento de la barra de estado del sistema Get. WHEN <lCondiciónPrevia> especifica una expresión que debe satisfacerse antes de que el cursor entre en el GET durante un mandato READ. La expresión puede ser, opcionalmente, un bloque de código. El objeto Get se pasa como parámetro al bloque de código. VALID <lCondiciónPosterior> especifica una expresión que debe satisfacerse antes de que el cursor pueda salir del GET durante un mandato READ. La expresión puede ser, opcionalmente, un bloque de código. El objeto Get se pasa como parámetro al bloque de código. COLOR <cCadenaColor> define los colores seleccionados para el botón. <cCadenaColor> es una expresión de caracteres que contiene cuatro parámetros de color. Atributos de color para el botón ------------------------------------------------------------------------ Posición Se aplica a Valor por defecto en colorSpec (parámetros de color del sistema) ------------------------------------------------------------------------ 1 El botón cuando no tiene el foco No seleccionado de entrada 2 El botón cuando tiene el foco de Mejorado entrada y no está pulsado 3 El botón cuando tiene el foco de Estándar entrada y está pulsado 4 La tecla aceleradora del título Fondo del botón ------------------------------------------------------------------------ Nota: Los colores de fondo no se tienen en cuenta en el modo gráfico. FOCUS <fbloque> especifica un bloque de código que se evalúa cada vez que el botón recibe el foco. El bloque de código no tiene argumentos implícitos. La variable de instancia PushButton:hasFocus se utiliza para determinar si el botón tiene el foco. STATE <bBloque> especifica un bloque de código que se evalúa cada vez que cambia el estado del botón. El bloque de código no tiene argumentos implícitos. La variable de instancia PushButton:buffer se utiliza para determinar si el botón está o no pulsado. Un valor verdadero (.T.) indica que está pulsado y un valor falso (.F.) indica que no lo está. STYLE <cEstilo> especifica una cadena de caracteres con los delimitadores utilizados por el método display() del botón. Si se especifica, la cadena debe contener cero, dos u ocho caracteres. Por defecto, contiene dos caracteres. El primero es el delimitador izquierdo. Su valor por defecto es el carácter menor que (<). El segundo carácter es el delimitador derecho. Su valor por defecto es el carácter mayor que (>). Si la cadena de caracteres está vacía el botón no tiene delimitadores. Si la longitud de la cadena es dos, el botón tiene delimitadores tanto izquierdo como derecho y ocupa una fila de la pantalla. El primer carácter es el delimitador izquierdo y el segundo, el delimitador derecho. Si la longitud de la cadena es ocho, el botón aparece en un cuadro que ocupa tres filas de la pantalla. Tipos estándar de cuadro ------------------------------------------------------------------------ Constante Descripción ------------------------------------------------------------------------ B_SINGLE Cuadro de línea simple B_DOUBLE Cuadro de línea doble B_SINGLE_DOUBLE Borde superior/inferior de una sola línea, borde izquierdo/derecho de línea doble B_DOUBLE_SINGLE Borde superior/inferior de línea doble, borde izquierdo/derecho de una sola línea ------------------------------------------------------------------------ El fichero Box.ch contiene las constantes que representan los posibles valores de PushButton:style. El estilo por defecto de @...GET PUSHBUTTON es "<>". Nota: La cláusula STYLE no se tiene en cuenta en el modo gráfico. SEND <mensaje> envía el mensaje especificado al objeto Get. <mensaje> se envía antes de la visualización del mandato GET. Es posible enviar cualquier mensaje, incluidas las llamadas a métodos y asignaciones de variables de instancia. Las llamadas a métodos deben incluir paréntesis aunque no se pasen argumentos. GUISEND <mensajeGUI> se puede utilizar para enviar un mensaje (por ejemplo, el método display()) a un objeto GUI. Los objetos GUI en CA-Clipper son cuadros de selección, cuadros de lista, botones y grupos de botones de opción. Para enviar un mensaje a un objeto que no sea GUI, por ejemplo objetos Get y TBrowse, se utiliza la cláusula SEND. SIZE X <nTamañoX> Y <nTamañoY> define el tamaño del botón. Las coordenadas se miden en píxeles. <nTamañoX> representa el número de píxeles en el eje x (horizontalmente) y <nTamañoY> representa el número de píxeles en el eje y (verticalmente). Este argumento sólo afecta a las aplicaciones que se ejecutan en modo gráfico y se ignora en el modo texto. CAPOFF X <nTítDespX> Y <nTítDespY> define el desplazamiento donde se va a mostrar el título. Las coordenadas se miden en píxeles. <nTítDespX> representa la distancia horizontal en píxeles desde el borde izquierdo del botón al lugar donde se visualizará el título. <nTítDespY> representa la distancia vertical en píxeles desde el borde superior del botón al lugar donde se visualizará el título. Si no se especifica la cláusula CAPOFF, el título aparece centrado en el interior del botón. Este argumento sólo afecta a las aplicaciones que se ejecutan en modo gráfico y se ignora en modo texto. BITMAP <cMapaBits> define un fichero de mapa de bits que se dibujará en el interior del botón. El nombre del fichero del mapa de bits no debe incluir ni la unidad ni el directorio; en cambio, la extensión es obligatoria. Un mapa de bits se puede almacenar tanto en un fichero de disco como en una biblioteca de mapa de bits. En el primer caso se debe almacenar en el directorio de la aplicación. Si se guarda en una biblioteca, ésta debe estar en el directorio de la aplicación, debe tener el mismo nombre y la extensión .BML. CA-Clipper busca primero el nombre del fichero en el disco y, si no lo encuentra, busca en la biblioteca de mapas de bits. Si no encuentra el fichero ni en el disco ni en la biblioteca no visualiza ningún mapa de bits. BMPOFF X <nMapaBitsDespX> Y <nMapaBitsDespY> define el desplazamiento donde se va a mostrar el mapa de bits. Las coordenadas se miden en píxeles. <nMapaBitsDespX> representa la distancia horizontal en píxeles desde el borde izquierdo del botón al lugar donde se visualizará el mapa de bits. <nMapaBitsDespY> representa la distancia vertical en píxeles desde el borde superior del botón al lugar donde se visualizará el título, medida en el eje y (verticalmente). Si no se especifica la cláusula BMPOFF, el mapa de bits aparece en la esquina superior izquierda del botón. Este argumento sólo afecta a las aplicaciones que se ejecutan en modo gráfico y se ignora en modo texto. Ejemplos ■ Este ejemplo muestra cómo añadir un botón en una pantalla de entrada de datos: @ 5, 20 GET lCancel PUSHBUTTON ; CAPTION "&Cancelar" STATE { || ReadKill( .T. ) } Ficheros Las bibliotecas asociadas son CLIPPER.LIB y LLIBG.LIB. To download this example - click here.
See Also: @...GET Get PushButton READ