Este es el sitio web histórico de la documentación de 4D. La documentación se está trasladando progresivamente a developer.4d.com |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v20 R7
OBJECT SET HELP TIP
|
OBJECT SET HELP TIP ( {* ;} objeto ; mensajeAyuda ) | ||||||||
Parámetro | Tipo | Descripción | ||||||
* | Operador |
![]() |
Si se especifica, objeto es un nombre de objeto (cadena) Si se omite, objeto es una variable o un campo |
|||||
objeto | Objeto de formulario |
![]() |
Nombre de objeto (si se especifica *) o Variable (si se omite *) |
|||||
mensajeAyuda | Texto |
![]() |
Contenido del mensaje de ayuda | |||||
El comando OBJECT SET HELP TIP permite definir o modificar dinámicamente el mensaje de ayuda asociado al objeto o los objetos designados por los parámetros objeto y * para el proceso actual.
Si pasa el parámetro opcional *, indica que el parámetro objeto es un nombre de objeto (una cadena). Si no pasa este parámetro, esto indica que el parámetro objeto es una variable. En este caso, se pasa una referencia de variable en lugar de una cadena.
En el parámetro mensajeAyuda, pase una cadena de caracteres para el contenido del mensaje. Si pasa una cadena vacía "", la sugerencia de ayuda se eliminará.
Cuando se ejecuta el formulario, los mensajes aparecen como mensajes de ayuda cuando el cursor se mueve sobre el campo u objeto. El retardo de visualización y la duración máxima de los mensajes de ayuda se pueden controlar utilizando los selectores Tips delay y Tips duration del comando SET DATABASE PARAMETER.
Pase el contenido del mensaje en el parámetro mensajeAyuda. Puede pasar:
Cuando el formulario se ejecuta, los mensajes de ayuda aparecen como mensajes de ayuda cuando el cursor pasa sobre el campo u objeto. El retraso de visualización y la duración máxima de los mensajes de ayuda pueden controlarse utilizando Tips delay y los selectores del comando SET DATABASE PARAMETER.
Puede utilizar este comando con un objeto list box para agregar mensajes de ayuda a las filas y celdas del list box. Por ejemplo, un objeto list box puede tener un mensaje de ayuda diferente por fila. En este caso, primero debe determinar la posición del cursor con el comando LISTBOX GET CELL POSITION. Esto se muestra en un ejemplo a continuación.
Cuando aparece un mensaje de ayuda, llamando al comando OBJECT SET HELP TIP se cierra, abre un nuevo mensaje en la ubicación del ratón y reinicia el contador Tips duration, permitiendo el manejo dinámico de las sugerencias.
Notas:
En este formulario, un mensaje de ayuda se visualiza y cambia dinámicamente cuando el ratón pasa sobre diferentes partes de un botón de imagen:
//Método objeto "myFlag"
C_REAL($x;$y;oldX;oldY)
C_REAL($left;$right;$top;$bottom)
C_LONGINT($b)
C_TEXT($tip)
C_TEXT(oldTip)
C_BOOLEAN($doRefresh)
Case of
:(FORM Event=On Load)
oldTip:=""
SET DATABASE PARAMETER(Tips enabled;1) //Para asegurarse de que los consejos están habilitados
SET DATABASE PARAMETER(Tips delay;0) // Sugerencia mostrada inmediatamente al detener el ratón
SET DATABASE PARAMETER(Tips duration;60*10) // 10 segundos máximo de visualización
:(FORM Event=On Mouse Move)
GET MOUSE($x;$y;$b)
OBJECT GET COORDINATES(*;"myFlag";$left;$top;$right;$bottom)
$x:=$x-$left
$y:=$y-$top
Case of //cada parte de la bander es de 76 píxeles
:($x<76)
$tip:="Green color"
:($x<152)
$tip:="White color"
Else
$tip:="Orange color"
End case
$doRefresh:=($tip#oldtip) //true si el mensaje es diferente
If(Not($doRefresh)) //Los mismos contenidos
$doRefresh:=((Abs($x-oldX)>30)|(Abs($y-oldY)>30)) //true si se mueve el cursor
End if
If($doRefresh) //mostrar otro mensaje
OBJECT SET HELP TIP(*;"myFlag";$tip)
oldX:=$x
oldY:=$y
oldTip:=$tip
End if
End case
Usted tiene un list box, "Commands List", que contiene una lista y desea definir un mensaje de ayuda que muestre la descripción de cada elemento de lista. La descripción se encuentra en la tabla [Documentation].
C_REAL($mouseX;$mouseY;$mouseZ)
C_LONGINT($col;$row)
Case of
:(FORM Event=On Mouse Enter)
SET DATABASE PARAMETER(Tips delay;1) // hace que el mensaje aparezca rápidamente
:(FORM Event=On Mouse Move)
//#1 : encuentra la fila que se ha movido
GET MOUSE($mouseX;$mouseY;$mouseZ)
LISTBOX GET CELL POSITION(*;"Commands List";$mouseX;$mouseY;$col;$row)
//#2 : configure el mensaje de ayuda correspondiente
If($row#0)
GOTO SELECTED RECORD([Documentation];$row)
OBJECT SET HELP TIP(*;"Commands List";[Documentation]Description) // La descripción completa se utilizará como "mensaje de ayuda" cuando (si) el ratón deja de moverse.
End if
:(FORM Event=On Mouse Leave)
SET DATABASE PARAMETER(Tips delay;3) // hace que el mensaje aparezca normalmente
End case
El resultado es...
Producto: 4D
Tema: Objetos (Formularios)
Número
1181
Creado por: 4D v13
Modificado: 4D v16 R4
Modificado: 4D v16 R5
Manual de lenguaje 4D ( 4D v20 R7)