ARRAY PICTURE
ARRAY PICTURE ( nomTableau ; taille {; taille2} )
Paramètre | Type | Description | |
---|---|---|---|
nomArray | Array | → | Nom du tableau |
taille | Integer | → | Nombre d'éléments du tableau ou Nombre de tableaux si taille2 est spécifié |
taille2 | Integer | → | Nombre d'éléments des tableaux à deux dimensions |
Description
La commande ARRAY PICTURE crée et/ou redimensionne un tableau d'éléments de type Image en mémoire.
- Le paramètre nomTableau est le nom du tableau.
- Le paramètre taille est le nombre d'éléments du tableau.
- Le paramètre taille2 est optionnel. Si vous le spécifiez, cette commande crée un tableau à deux dimensions. Dans ce cas, taille spécifie le nombre de lignes et taille2 spécifie le nombre de colonnes de chaque tableau. Chaque ligne dans un tableau à deux dimensions peut être traitée à la fois comme un élément et comme un tableau. Cela signifie que vous pouvez insérer et supprimer des tableaux entiers dans un tableau à deux dimensions, par l'intermédiaire des autres commandes de ce thème, lorsque vous travaillez avec la première dimension du tableau.
Lorsque vous appliquez la commande ARRAY PICTURE à un tableau existant :
- Si vous agrandissez sa taille, les éléments existants ne sont pas modifiés, les nouveaux éléments sont initialisés à une image vide (ce qui signifie que la fonction Picture size appliquée à l'un de ces éléments retourne 0).
- Si vous réduisez sa taille, les éléments du "bas" du tableau sont supprimés et perdus.
Exemple 1
Cet exemple crée un tableau process contenant 100 éléments de type Image :
ARRAY PICTURE(tabImages;100)
Exemple 2
Cet exemple crée un tableau local de 100 lignes contenant chacune 50 éléments de type Image :
ARRAY PICTURE($tabImages;100;50)
Exemple 3
Cet exemple crée un tableau interprocess d'éléments de type Image. La taille du tableau est égale au nombre de ressources 'PICT' dont le nom commence par "Utilisateur Intf/" disponibles dans la base. Chaque image est chargée dans un élément du tableau :
RESOURCE LIST("PICT";$aiResIDs;$asResNoms)
ARRAY PICTURE(◊tabImages;Taille tableau($aiResIDs))
$vlPictElem:=0
For($vlElem;1;Size of array(◊tabImages))
If($asResNoms{$vlElem}="Utilisateur Intf/@")
$vlPictElem:=$vlPictElem+1
GET PICTURE RESOURCE("PICT";$aiResIDs{$vlElem};$vgImage)
◊tabImages{$vlPictElem}:=$vgImage
End if
End for
ARRAY PICTURE(◊tabImages;$vlPictElem)