4D Write v16

WR GET CURSOR COORDINATES

Inicio

 
4D Write v16
WR GET CURSOR COORDINATES

WR GET CURSOR COORDINATES 


 

WR GET CURSOR COORDINATES ( area ; posHoriz ; posVert ; altura ) 
Parámetro Tipo   Descripción
area  Entero largo in Área 4D Write
posHoriz  Real in Coordenada horizontal en la página
posVert  Real in Coordenada vertical en la página
altura  Real in Altura del cursor

El comando WR GET CURSOR COORDINATES devuelve las coordenadas del cursor en relación con la esquina superior izquierda de la página. Estos valores se expresan en la unidad por defecto del documento actual.

Cuando el comando se ejecuta con un texto o una imagen seleccionada en el área, se pueden producir dos casos:

  • Si la selección se ha realizado por programación,  se considera que el cursor está al final de la selección.
  • Si la selección se ha realizado de forma manual, se considera que el cursor está donde el botón del ratón se liberó. Por ejemplo, si un párrafo se selecciona manualmente arrastrando el ratón desde la última línea a la primera línea, la posición del cursor será al principio de la selección.

El parámetro altura devuelve la altura actual del cursor. Si sólo se selecciona una imagen, se devuelve la altura de la imagen.

Ejemplo  

A partir de la versión 2004.5 de 4D, el comando Print form se puede utilizar para imprimir áreas 4D Write. En principio, estas áreas se imprimen con una altura fija. El siguiente ejemplo muestra cómo utilizar los comandos de impresión de 4D y el comando WR GET CURSOR COORDINATES para variar la altura de impresión del área 4D Write en función de su contenido.

  • Este es el método de formulario llamado por el comando Print form:
 If(Form event=On Printing Detail)
    GET OBJECT RECT(4DWriteArea;$left;$top;$right;$bottom)
    $markerpos:=Get print marker(Form detail)
    $areaheight:=$bottom-$top  ` altura del área 4D Write
    $newheight:=sizecalcul
  ` sizecalcul devuelve la altura del área 4D Write en función de su contenido
  ` este método se muestra a continuación
    $shift:=$newheight-$areaheight
    MOVE OBJECT(4DWriteArea;0;0;0;$shift` redimensión del área 4D Write
    SET PRINT MARKER(Form detail;$markerpos+$shift` mover el marcador
 End if
  • A continuación el método sizecalcul:
 $area:=WR New offscreen area
 WR BLOB TO AREA($area;[Table 1]Write_)
 WR SET DOC PROPERTY($area;wr unit;2) ` Estamos trabajando en píxeles
 
 WR SET SELECTION($area;1;1) ` Inicio del texto
 WR GET CURSOR COORDINATES($area;$hor;$startvert;$cursor1)
 WR SET SELECTION($area;1000000;1000000) ` Fin del texto
 WR GET CURSOR COORDINATES($area;$hor;$vert;$cursor2)
 
 WR DELETE OFFSCREEN AREA($area)
 $0:=Trunc(($vert-$startvert+$cursor1+$cursor2)*0.75;0)



Ver también 

WR GET CURSOR POSITION

 
PROPIEDADES 

Producto: 4D Write
Tema: WR Opciones del área
Número 89438

 
HISTORIA 

Modificado: 4D Write 2004.5

 
ARTICLE USAGE

4D Write - Lenguaje ( 4D Write v16)