Aller au contenu principal
Version: v18

Text

Autoriser sélecteur police/couleur

Lorsque cette propriété est activée, les commandes OPEN FONT PICKER et OPEN COLOR PICKER peuvent être appelées pour afficher les fenêtres de sélecteur de la police système et de couleurs. A l'aide de ces fenêtres, les utilisateurs peuvent modifier la police ou la couleur d'un objet formulaire dont le focus est accessible directement au clic. Lorsque cette propriété est désactivée (par défaut), les commandes d'ouverture du sélecteur ne produisent aucun effet.

Grammaire JSON

PropriétéType de donnéesValeurs possibles
allowFontColorPickerbooleanfalse (par défaut), true

Objets pris en charge

Zone de saisie


Souligné

Le texte sélectionné est plus foncé et plus épais.

Vous pouvez également définir cette propriété à l'aide de la commande OBJECT SET FONT STYLE.

This is normal text.
This is bold text.

Grammaire JSON

PropriétéType de donnéesValeurs possibles
fontWeighttext"normal", "bold"

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte


Italique

Le texte sélectionné est légèrement penché vers la droite.

Vous pouvez également définir cette propriété à l'aide de la commande OBJECT SET FONT STYLE.

This is normal text.
This is text in italics.

Grammaire JSON

NomType de donnéesValeurs possibles
fontStylestring"normal", "italic"

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte


Souligné

Une ligne est placée sous le texte.

Grammaire JSON

NomType de donnéesValeurs possibles
textDecorationstring"normal", "underline"

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte


Police

Cette propriété vous permet d'indiquer le thème de la police ou la famille de police utilisé(e) dans l'objet.

Les propriétés du thème et de la famille de police sont mutuellement exclusives. Un thème de police prend en charge les attributs de police, y compris la taille. Une famille de polices vous permet de définir le nom de la police, sa taille et sa couleur.

Thème de police

La propriété de thème de police désigne un nom de style automatique. Les styles automatiques déterminent de manière dynamique la famille de police, la taille et la couleur de police à utiliser pour l'objet, en fonction des paramètres système. Ces paramètres dépendent de :

  • la plateforme,
  • la langue du système,
  • et le type d'objet de formulaire.

Avec le thème de police, vous avez la garantie que les titres s'affichent toujours conformément aux normes de l'interface du système. Cependant, leur taille peut varier d'une machine à l'autre.

Trois thèmes de polices sont disponibles :

  • normal : style automatique, appliqué par défaut à tout nouvel objet créé dans l'éditeur de formulaires.
  • Les thèmes de polices principaux et supplémentaires ne sont pris en charge uniquement par les zones de texte et les zones de saisie. Ces thèmes sont principalement destinés à la conception de boîtes de dialogue. Ils font référence aux styles de police utilisés respectivement pour le texte principal et les informations supplémentaires dans vos fenêtres d'interface. Voici les boîtes de dialogue typiques (macOS et Windows) utilisant ces thèmes de polices :

Les thèmes de polices gèrent la police ainsi que sa taille et sa couleur. Si vous modifiez l'une des propriétés gérées par un thème de police, cela ne fonctionne plus de manière dynamique. Cependant, vous pouvez appliquer des propriétés de style personnalisé (Gras, Italique ou Souligné) sans modifier son fonctionnement.

Grammaire JSON

NomType de donnéesValeurs possibles
fontThemestring"normal", "main", "additional"

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte

Famille de police

Il existe deux types de noms de familles de polices :

  • family-name : Le nom d'une famille de polices, comme "times", "courier", "arial", etc.
  • generic-family : Le nom d'une famille générique, comme "serif", "sans-serif", "cursive", "fantasy", "monospace".

Vous pouvez la définir à l'aide de la commande OBJECT SET FONT .

Grammaire JSON

NomType de donnéesValeurs possibles
fontFamilystringNom d'une famille de police CSS

4D recommande d'utiliser uniquement les polices de sécurité Web.

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte


Taille

Cette propriété est disponible uniquement lorsqu'aucun thème de police n'est sélectionné.

Permet de définir en points la taille de police de l'objet.

Grammaire JSON

NomType de donnéesValeurs possibles
fontSizeentierTaille de la police en points. Valeur minimale : 0

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Bouton Radio - Zone de texte


Couleur de la police

Désigne la couleur de la police.

Cette propriété définit également la couleur de bordure (le cas échéant) de l'objet lorsque le style "plein" ou "pointillé" est utilisé.

La couleur peut être spécifiée par :

  • un nom de couleur - comme "red"
  • une valeur HEX - comme "# ff0000"
  • une valeur RVB - comme "rgb (255,0,0)"

Vous pouvez également définir cette propriété à l'aide de la commande OBJECT SET RGB COLORS.

Grammaire JSON

NomType de donnéesValeurs possibles
strokestringune valeur css; "transparent"; "automatic"

Objets pris en charge

Bouton - Case à cocher - Combo Box - Liste déroulante - Group Box - Liste hiérarchique - Zone de saisie - List Box - Colonne List Box - Pied List Box - En-tête List Box - Indicateurs de progression - Règle - Bouton Radio - Zone de texte


Expression couleur police

List box de type collection/sélection d'entité

Utilisée pour appliquer une couleur de police personnalisée à chaque ligne de la list box. Vous devez utiliser des valeurs de couleur RVB. Pour plus d'informations à ce sujet, reportez-vous à la description de la commande OBJECT SET RGB COLORS dans le manuel Langage 4D.

Vous devez saisir une expression ou une variable (les variables de type tableau ne peuvent pas être utilisées). L'expression ou la variable sera évaluée pour chaque ligne affichée. Vous pouvez utiliser les constantes du thème SET RGB COLORS.

Vous pouvez également définir cette propriété à l'aide de la commande LISTBOX SET PROPERTY avec la constante lk font color expression.

Cette propriété peut également être définie à l'aide d'une expression Meta Info.

L'exemple suivant utilise un nom de variable : entrez CompanyColor pour l'expression couleur police et, dans la méthode formulaire, entrez le code suivant :

CompanyColor:=Choose([Companies]ID;Background color;Light shadow color;   
Foreground color;Dark shadow color)

Grammaire JSON

NomType de donnéesValeurs possibles
rowStrokeSourcestringExpression couleur police

Objets pris en charge

List Box


Expression style

List box de type collection/sélection d'entité

Utilisé pour appliquer un style de police personnalisé à chaque ligne de list box ou de chaque cellule de la colonne.

Vous devez saisir une expression ou une variable (les variables de type tableau ne peuvent pas être utilisées). L'expression ou variable sera évaluée pour chaque ligne affichée (si elle s'applique à la list box) ou chaque cellule affichée (si elle s'applique à la list box). Vous pouvez utiliser les constantes du thème Styles de caractères.

Voici un exemple :

Choose([Companies]ID;Bold;Plain;Italic;Underline)

Vous pouvez également définir cette propriété à l'aide de la commande LISTBOX SET PROPERTY avec la constante lk font style expression.

Cette propriété peut également être définie à l'aide d'une expression Meta Info.

Grammaire JSON

NomType de donnéesValeurs possibles
rowStyleSourcestringExpression de style à évaluer pour chaque ligne/cellule.

Objets pris en charge

List Box - Colonne List Box


Alignement horizontal

Emplacement horizontal du texte dans la zone où il apparait.

Grammaire JSON

NomType de donnéesValeurs possibles
textAlignstring"automatic", "right", "center", "justify", "left"

Objets pris en charge

Group Box - List Box - Colonne List Box - En-tête List Box - Pied List Box - Zone de texte


Alignement vertical

Emplacement vertical du texte dans la zone où il apparait.

L'option Default (valeur JSON automatique) définit l'alignement en fonction du type de données identifiées dans chaque colonne :

  • bas pour toutes les données (sauf les images) et
  • haut pour les données de type image.

Cette propriété peut également être gérée par les commandes OBJECT Get vertical alignment et OBJECT SET VERTICAL ALIGNMENT.

Grammaire JSON

NomType de donnéesValeurs possibles
verticalAlignstring"automatic", "top", "middle", "bottom"

Objets pris en charge

List Box - Colonne List Box - Pied List Box - En-tête List Box


Meta Info expression

List box de type collection ou entity selection (sélection d'entité)

Indique une expression ou une variable qui sera évaluée pour chaque ligne affichée. Elle permet de définir un ensemble d'attributs texte des lignes. Vous devez passer une variable objet ou une expression qui retourne un objet. Les propriétés suivantes sont prises en charge :

Nom de propriétéTypeDescription
strokestringCouleur de la police. Toute couleur CSS (ex : "#FF00FF"), "automatic", "transparent"
border-stylestringCouleur de fond. Toute couleur CSS (ex : "#FF00FF"), "automatic", "transparent"
fontStylestring"normal","italic"
fontWeightstring"normal","bold"
textDecorationstring"normal","underline"
unselectablebooleanDésigne la ligne correspondante comme n'étant pas sélectionnable (c'est-à-dire que le surlignage n'est pas possible). Les zones saisissables ne sont plus saisissables si cette option est activée, à moins que l'option «Single-click Edit » ne soit également activée. Les contrôles tels que les cases à cocher et les listes restent fonctionnels. Ce paramètre est ignoré si le mode de sélection de la listbox est "None". Valeur par défaut : False.
disabledbooleanDésactive la ligne correspondante. Les zones saisissables ne sont plus saisissables si cette option est activée. Le texte et les contrôles (cases à cocher, listes, etc.) sont grisés. Valeur par défaut : False.
cell.\<columnName>objectPermet d'appliquer la propriété à une seule colonne. Pass in \<columnName> the object name of the list box column. Note : les propriétés "unselectable" et "disabled" ne peuvent être définies qu'au niveau de la ligne. Elles sont ignorées si elles sont passées dans l'objet "cell"

Les paramètres de style définis avec cette propriété sont ignorés si d'autres paramètres de style sont déjà définis via des expressions (par exemple, Style Expression, Font Color Expression, Background Color Expression).

Exemple

Dans la méthode projet Color, entrez le code suivant :

//Méthode Color
//Définit la couleur de police pour certaines lignes et la couleur de fond pour une colonne spécifique :
C_OBJECT($0)
Form.meta:=New object
If(This.ID>5) //ID est un attribut d'objets/entités d'une collection
Form.meta.stroke:="purple"
Form.meta.cell:=New object("Column2";New object("fill";"black"))
Else
Form.meta.stroke:="orange"
End if
$0:=Form.meta

Bonnes pratiques : Pour des raisons d'optimisation, il serait recommandé dans ce cas de créer l'objet meta.cell une fois contenu dans la méthode formulaire :

  //méthode formulaire
Case of
:(Form event code=On Load)
Form.colStyle:=New object("Column2";New object("fill";"black"))
End case

La méthode Color contiendrait alors :

  //méthode Color
...
If(This.ID>5)
Form.meta.stroke:="purple"
Form.meta.cell:=Form.colStyle //réutiliser le même objet pour de meilleures performances
...

Voir également la commande This.

Grammaire JSON

NomType de donnéesValeurs possibles
metaSourcestringExpression de l'objet à évaluer pour chaque ligne/cellule.

Objets pris en charge

List Box


Multistyle

Cette propriété permet d'utiliser des styles spécifiques dans la zone sélectionnée. Lorsque cette option est cochée, 4D interprète toutes les balises <SPAN> HTML trouvées dans la zone.

Par défaut, cette option n'est pas activée.

Grammaire JSON

NomType de donnéesValeurs possibles
styledTextbooleantrue, false

Objets pris en charge

List Box Column - Input


Orientation

Modifie l'orientation (rotation) d'une zone de texte. Les zones de texte peuvent être pivotées par incréments de 90°. Chaque valeur d'orientation est appliquée tout en conservant le même point de départ inférieur gauche pour l'objet :

Valeur d'orientationRésultat
0 (par défaut)
90
180
270

En plus des zones de texte statiques, les objets de texte des zones de saisie peuvent être pivotés lorsqu'ils ne sont pas saisissables. Lorsqu'une propriété de rotation est appliquée à un objet de saisie, la propriété saisissable est supprimée (le cas échéant). Cet objet est alors exclu de l'ordre de saisie.

Grammaire JSON

NomType de donnéesValeurs possibles
textAnglenumber0, 90, 180, 270

Objets pris en charge

Zone de saisie (non saisissable) - Zone de texte


Tableau couleurs de police

List box de type tableau

Permet de définir un style de police personnalisé à chaque ligne de list box ou de chaque cellule de la colonne.

Le nom d'un tableau Entier Long doit être utilisé. Chaque élément de ce tableau correspond à une ligne de la zone de list box (si elle est appliquée à la liste box) ou à une cellule de la colonne (si elle est appliquée à une colonne), le tableau doit donc avoir la même taille que le tableau associé à la colonne. Vous pouvez utiliser les constantes du thème SET RGB COLORS. Si vous souhaitez que la cellule hérite de la couleur d'arrière-plan définie au niveau supérieur, passez la valeur -255 à l'élément de tableau correspondant.

Grammaire JSON

NomType de donnéesValeurs possibles
rowStrokeSourcestringNom d'un tableau entier long

Objets pris en charge

List Box - Colonne List Box


Tableau de styles

List box de type tableau

List Box - Colonne List Box

Le nom d'un tableau Entier Long doit être utilisé. Chaque élément de ce tableau correspond à une ligne de la zone de list box (si elle est appliquée à la liste box) ou à une cellule de la colonne (si elle est appliquée à une colonne), le tableau doit donc avoir la même taille que le tableau associé à la colonne. Pour remplir le tableau (à l'aide d'une méthode), utilisez les constantes du thème Styles de caractères. Vous pouvez ajouter des constantes ensemble pour combiner plusieurs styles. Si vous souhaitez que la cellule hérite du style défini au niveau supérieur, passez la valeur -255 à l'élément de tableau correspondant.

Grammaire JSON

NomType de donnéesValeurs possibles
rowStyleSourcestringNom d'un tableau entier long.

Objets pris en charge

List Box - Colonne List Box


Stocker les balises par défaut

Cette propriété n'est disponible que pour une zone de saisie multi-styles. Lorsque cette propriété est activée, la zone stockera les balises de style avec le texte, même si aucune modification n'a été apportée. Dans ce cas, les balises correspondent au style par défaut. Lorsque cette propriété est désactivée, seules les balises de style modifiées sont stockées.

Par exemple, voici un texte qui inclut une modification de style :

Lorsque la propriété est désactivée, la zone ne stocke que la modification qui a été apportée. Les contenus stockés sont donc :

Quelle <SPAN STYLE="font-size:13.5pt">belle</SPAN> journée !

Lorsque la propriété est activée, la zone stocke toutes les informations de mise en forme. La première balise générique décrit le style par défaut puis chaque variation fait l'objet d'une paire de balises imbriquées. Les contenus stockés dans la zone sont donc :

<SPAN STYLE="font-family:'Arial';font-size:9pt;text-align:left;font-weight:normal;font-style:normal;text-decoration:none;color:#000000;background-color:#FFFFFF">What a <SPAN STYLE="font-size:13.5pt">beautiful</SPAN> day!</SPAN>

Grammaire JSON

NomType de donnéesValeurs possibles
storeDefaultStylebooleantrue, false (par défaut).

Objets pris en charge

Zone de saisie