4D v16.3

SET PICTURE TO LIBRARY

Inicio

 
4D v16.3
SET PICTURE TO LIBRARY

SET PICTURE TO LIBRARY 


 

SET PICTURE TO LIBRARY ( imagen ; refImag ; nomImag ) 
Parámetro Tipo   Descripción
imagen  Imagen in Nueva imagen
refImag  Entero largo in Número de referencia de la imagen en la librería de imágenes
nomImag  Cadena in Nuevo nombre de la imagen

El comando SET PICTURE TO LIBRARY crea una nueva imagen o reemplaza una imagen existente en la librería de imágenes.

Antes de llamar el comando, usted pasa:

  • el número de referencia de la imagen en refImag (entre 1 y 32767 )
  • la imagen misma en imagen.
  • el nombre de la imagen en nomImag (longitud máxima: 255 caracteres).

Si hay una imagen en la librería de imágenes con el mismo número de referencia, su contenido será reemplazado y la imagen se renombra con los valores pasados en imagen y nomImag.

Si no hay una imagen en la librería de imágenes con el número de referencia pasado en refImag, una nueva imagen se añade a la librería de imágenes.

4D Server: SET PICTURE TO LIBRARY no puede utilizarse dentro de un método ejecutado en el equipo servidor (procedimiento almacenado o trigger). Si llama SET PICTURE TO LIBRARY en un equipo servidor, no pasa nada, la llamada se ignora.

Advertencia: los objetos de estructura (elementos de listas jerárquicas, líneas de menú, etc.) pueden referirse a una imagen de la librería de imágenes. Sea prudente cuando modifique por programación una imagen de la librería de imágenes.

Nota: si pasa una imagen vacía en imagen o un valor negativo o nulo en refImag, el comando no hace nada.

Sin importar el contenido actual de la librería de imágenes, el siguiente ejemplo añade una nueva imagen a la librería buscando primero un número de referencia de una imagen única:

 PICTURE LIBRARY LIST($alRefImag;$asNomsImag)
 Repeat
    $vlRefImag:=1+Abs(Random)
 Until(Find in array($alRefImag;$vlRefImag)<0)
 SET PICTURE TO LIBRARY(vgImagen;$vlRefImag;"Nueva Imagen")

El siguiente ejemplo importa en la librería de imágenes las imágenes (almacenadas en un documento en disco) creadas por el tercer ejemplo del comando PICTURE LIBRARY LIST:

 SET CHANNEL(10;"")
 If(OK=1)
    RECEIVE VARIABLE($vsTag)
    If($vsTag="4DV6PICTURELIBRARYEXPORT")
       RECEIVE VARIABLE($vlNbImagenes)
       If($vlNbImagenes>0)
          For($vlImag;1;$vlNbImagenes)
             RECEIVE VARIABLE($vlPicRef)
             If(OK=1)
                RECEIVE VARIABLE($vsNomImag)
             End if
             If(OK=1)
                RECEIVE VARIABLE($vgImag)
             End if
             If(OK=1)
                SET PICTURE TO LIBRARY($vgImag;$vlRefImag;$vsNomImag)
             Else
                $vlImag:=$vlNbImagenes+1
                ALERT("Este archivo parece estar dañado.")
             End if
          End for
       Else
          ALERT("Este archivo parece estar dañado.")
       End if
    Else
       ALERT("El archivo “"+Document+"” no es un archivo de exportación de la librería de imágenes.")
    End if
    SET CHANNEL(11)
 End if

Si no hay suficiente memoria para añadir la imagen a la librería de imágenes, se genera un error -108. Note que los errores E/S también pueden ser generados (si por ejemplo el archivo de estructura está bloqueado). Puede interceptar estos errores con un método de gestión de errores.



Ver también 

GET PICTURE FROM LIBRARY
PICTURE LIBRARY LIST
REMOVE PICTURE FROM LIBRARY

 
PROPIEDADES 

Producto: 4D
Tema: Imágenes
Número 566

Este comando modifica la variable sistema ErrorEste comando no puede utilizarse con 4D Server

 
HISTORIA 

Creado por: 4D v6

 
ARTICLE USAGE

Manual de lenguaje 4D ( 4D v16)
Manual de lenguaje 4D ( 4D v16.1)
Manual de lenguaje 4D ( 4D v16.2)
Manual de lenguaje 4D ( 4D v16.3)