DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Fonctions WLangage / Champs, pages et fenêtres / Fonctions Traitement de texte
  • Manipuler un tableau par programmation
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Insère un tableau dans un document de type Traitement de texte ou remplace le fragment spécifié par un nouveau tableau.
Exemple
// Insère un tableau à la position 1 de taille 3x3
DocInsèreTableau(TT_Tableau, 1, 3, 3)
// Insère un tableau à la position du curseur de taille 3 colonnes et 2 lignes
DocInsèreTableau(TT_Tableau, TT_Tableau.Curseur, 3, 2)
Syntaxe

Insérer un tableau dans un document de type Traitement de texte Masquer les détails

<Résultat> = DocInsèreTableau(<Document> , <Position> [, <Nombre de colonnes> [, <Nombre de lignes>]])
<Résultat> : Variable de type docFragment
Variable de type docFragment contenant le fragment inséré.
<Document> : Variable de type Document ou chaîne de caractères
Document à manipuler. Ce document correspond :
  • WINDEV au nom d'un champ Traitement de texte.
  • à une variable de type Document.
<Position> : Entier
Position à laquelle le tableau doit être inséré. Cette position est exprimée en nombre de caractères.
<Nombre de colonnes> : Entier optionnel
Nombre de colonnes du tableau. Par défaut, ce paramètre correspond à 1.
<Nombre de lignes> : Entier optionnel
Nombre de lignes du tableau. Par défaut, ce paramètre correspond à 1.

Remplacer le fragment existant par un nouveau tableau Masquer les détails

<Résultat> = DocInsèreTableau(<Fragment> [, <Nombre de colonnes> [, <Nombre de lignes>]])
<Résultat> : Variable de type docFragment
Variable de type docFragment contenant le fragment inséré.
<Fragment> : Variable de type docFragment
Nom de la variable de type docFragment correspondant au fragment à manipuler. Le contenu actuel du fragment sera remplacé par le tableau créé.
<Nombre de colonnes> : Entier optionnel
Nombre de colonnes du tableau. Par défaut, ce paramètre correspond à 1.
<Nombre de lignes> : Entier optionnel
Nombre de lignes du tableau. Par défaut, ce paramètre correspond à 1.
Remarques

Manipuler un tableau par programmation

Un tableau présent dans un document de type Traitement de texte peut être manipulé avec les fonctions de gestion des tableaux du WLangage.
Quelques exemples :
Exemple :
// Insère un tableau à la position 1 de taille 3x3
DocInsèreTableau(TT_ExempleTT, 1, 3, 3)
 
// Définition d'un fragment correspondant au tableau
f est un docFragment(TT_ExempleTT.Valeur, TT_ExempleTT.Curseur, 0)
 
soit para <- f.Paragraphe[1]
SI para.Tableau = Null ALORS
RETOUR
FIN
 
doc est un Document <- TT_ExempleTT.Valeur
 
// Ajoute une ligne au tableau
nIndice est un entier = Ajoute(para.Tableau.Lignes)
 
// Saisie dans la cellule 2,2
para.Tableau.Cellules[2,2].Contenu.Texte = "Je suis dans la cellule 2,2"
 
// Supprime la ligne 3
Supprime(para.Tableau.Lignes, 3)
 
// Supprime la colonne 3
Supprime(para.Tableau.Colonnes, 3)
 
// Supprime le tableau entier où se trouve le curseur
Supprime(doc.Paragraphe, para.IndiceParagraphe)
Exemple de création d'un tableau dans un document avec le contenu d'un champ Table :
// Une fenêtre contient un champ Table par programmation nommé TABLE_Démo
// et un champ Traitement de texte nommé TT_Démo
// Le code suivant ajoute un tableau dans le champ Traitement de texte avec :
// - en première ligne du tableau, le titre des colonnes du champ Table,
// - le contenu du champ Table dans les lignes suivantes du tableau.
 
MonDoc est un Document
cTable est un Champ <- TABLE_Démo
pCol est un Champ
 
FragmentDeb est un docFragment(MonDoc,1)
FragmentDeb.MiseEnForme.PoliceTaille = 24
FragmentDeb.MiseEnForme.CouleurTexte = RougeFoncé
FragmentDeb.Texte = "Tableau dans TTX avec " + cTable.Libellé + RC + RC
 
// Insertion du tableau dans le document en mémoire ...
DocInsèreTableau(MonDoc, 20, TableOccurrence(cTable, toColonne), cTable.Occurrence + 1)
 
POUR TOUT para DE MonDoc.Paragraphe
SI para.Tableau <> Null ALORS
// Pour toutes les colonnes du champ table ...
POUR nColonne = 1 _À_ TableOccurrence(cTable, toColonne)
 
// Première ligne du tableau contient le titre des colonnes
pCol <- TableEnumèreColonne(cTable, nColonne)
para.Tableau.Cellules[1, nColonne].Contenu.Texte = pCol.Libellé
 
// Remplissage de toutes les lignes de cette colonne
POUR nLigne = 1 _À_ cTable.Occurrence
para.Tableau.Cellules[nLigne+1, nColonne].Contenu.Texte = pCol[nLigne]
FIN
FIN
SORTIR
FIN
FIN
 
// Document en mémoire affecté au champ Traitement de texte
TT_Démo = MonDoc
Composante : wd290mdl.dll
Version minimum requise
  • Version 22
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 23/06/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale