4D v16.3

SET PICTURE TO LIBRARY

Página Inicial

 
4D v16.3
SET PICTURE TO LIBRARY

SET PICTURE TO LIBRARY 


 

SET PICTURE TO LIBRARY ( imagem ; refImag ; nomeImagem ) 
Parâmetro Tipo   Descrição
imagem  Imagem in Nova Imagem
refImag  Inteiro longo in Número de referência da Biblioteca de Imagens
nomeImagem  String in Novo nome da imagem

O comando SET PICTURE TO LIBRARY cria uma nova imagem ou substitui uma imagem existente na biblioteca de imagens.

Antes de chamar o comando, você passa:

  • o número de referência da imagem em refImag (entre 1 e 32767 )
  • a imagem mesma em imagem.
  • o nome da imagem em nomeImagem (longitude máxima: 255 caracteres).

Se houver uma imagem na biblioteca de imagens com o mesmo número de referência, seu conteúdo será substituído e a imagem é renomeado com os valores passados em imagem e nomeImagem.

Se não houver uma imagem na biblioteca de imagens com o número de referência passado em refImag, uma nova imagem se adiciona a biblioteca de imagens.

4D Server: SET PICTURE TO LIBRARY não pode ser utilizado dentro de um método executado na máquina servidor (procedimento armazenado ou trigger). Se chama SET PICTURE TO LIBRARY em uma máquina servidor, não acontece nada, a chamada é ignorada.

Advertência: os objetos de estrutura (elementos de listas hierárquicas, linhas de menu, etc.) podem ser referidas a uma imagem da biblioteca de imagens. Seja prudente quando modifique por programação uma imagem da biblioteca de imagens.

Nota: se passa uma imagem vazia em imagem ou um valor negativo ou nulo em refImag, o comando não faz nada.

Sem importar o conteúdo atual da biblioteca de imagens, o exemplo a seguir adiciona uma nova imagem à biblioteca buscando primeiro um número de referência de uma imagem única:

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

O exemplo a seguir importa na biblioteca de imagens as imagens (armazenadas em um documento em disco) criadas pelo terceiro exemplo do comando PICTURE LIBRARY LIST:

 SET CHANNEL(10;"")
 If(OK=1)
    RECEIVE VARIABLE($vsTag)
    If($vsTag="4DV6PICTURELIBRARYEXPORT")
       RECEIVE VARIABLE($vlNbImagens)
       If($vlNbImagens>0)
          For($vlImag;1;$vlNbImagens)
             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:=$vlNbImagens+1
                ALERT("Este arquivo parece estar danificado.")
             End if
          End for
       Else
          ALERT("Este arquivo parece estar danificado.")
       End if
    Else
       ALERT("O arquivo “"+Document+"” não é um arquivo de exportação da biblioteca de imagens.")
    End if
    SET CHANNEL(11)
 End if

Se não houver suficiente memória para adicionar a imagem à biblioteca de imagens, se gera um erro -108. Note que os erros E/S também podem ser gerados (se por exemplo o arquivo de estrutura está bloqueado). Pode interceptar estes erros com um método de gestão de erros.



Ver também 

GET PICTURE FROM LIBRARY
PICTURE LIBRARY LIST
REMOVE PICTURE FROM LIBRARY

 
PROPRIEDADES 

Produto: 4D
Tema: Imagens
Número 566

Este comando modifica a variável sistema ErrorEste comando não pode ser utilizado com 4D Server

 
HISTÓRIA 

Criado por: 4D v6

 
ARTICLE USAGE

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