Functions > GUI > GUICtrlUpdate >


GUICtrlSetFont

Définit la police utilisée dans un contrôle.

GUICtrlSetFont ( controlID, size [, weight [, attribute [, fontname [, quality]]]] )

Paramètres

controlID L'identifiant du contrôle tel que retourné par une fonction GUICtrlCreate...(), ou -1 pour désigner le dernier contrôle créé.
size Taille de la police (par défaut 8.5).
weight [optionnel] Graisse de la police dans la plage 0-1000; par exemple, 400 est normal et 700 est en gras. Si cette valeur est égale à zéro, une graisse par défaut est utilisée.
Les valeurs suivantes sont définies pour des raisons pratiques.
    $FW_DONTCARE = 0 (Utilise la graisse de la police par défaut)
    $FW_THIN = 100
    $FW_EXTRALIGHT = 200
    $FW_LIGHT = 300
    $FW_NORMAL = 400
    $FW_MEDIUM = 500
    $FW_SEMIBOLD = 600
    $FW_BOLD = 700
    $FW_EXTRABOLD = 800
    $FW_HEAVY = 900
Les constantes sont définies dans FontConstants.au3
attribute [optionnel] Attributs de police, qui peut être une combinaison des éléments suivants additionnés :
    $GUI_FONTITALIC (2) = Italique
    $GUI_FONTUNDER (4) = Souligné
    $GUI_FONTSTRIKE (8) = Barré
Les constantes sont définies dans GUIConstantsEx.au3
fontname [optionnel] Nom de la police à utiliser (police par défaut de l'OS utilisée si la police est "" ou introuvable).
quality [optionnel] Qualité de la police à sélectionner. Les qualités suivantes sont acceptées:
    $DEFAULT_QUALITY (0) = L'apparence de la police n'a pas d'importance.
    $DRAFT_QUALITY (1) = L'apparence de la police est moins importante que lorsque $PROOF_QUALITY est utilisé. Pour les polices raster GDI, la mise à l'échelle est activée, ce qui signifie que plusieurs tailles de police sont disponibles, mais la qualité peut être inférieure.Les polices Gras, italique, souligné, et barré sont synthétisés si nécessaire.
    $PROOF_QUALITY (2) = (par défaut) La qualité des caractères de la police est plus importante que d'adapter exactement les attributs logique de la police. Pour les polices raster GDI, la mise à l'échelle est désactivée et la police la plus proche en taille est choisie. Bien que la taille de la police choisie ne peut pas être mappé exactement quand $PROOF_QUALITY est utilisé, la qualité de la police est élevé et il n'y a pas de distorsion de l'apparence. Les polices gras, italique, souligné, et barré sont synthétisés si nécessaire.
    $NONANTIALIASED_QUALITY (3) = la police n'est jamais anti-crénelé.
    $ANTIALIASED_QUALITY (4) = la police est toujours anti-crénelé si la police le prend en charge et si la taille de la police n'est pas trop petit ou trop grande.
    $CLEARTYPE_QUALITY (5) = Si défini, le rendu du texte est obtenu (si possible) en utilisant la méthode ClearType d'antialiasing. Voir Remarques sur la page MSDN pour LOGFONT pour savoir quand ClearType n'est pas disponible.
Si ni $ANTIALIASED_QUALITY ni $NONANTIALIASED_QUALITY n'est sélectionné, la police est anti-crénelée seulement si l'utilisateur choisit les polices d'écran lisses dans le Panneau de configuration.

Les constantes sont définies dans FontConstants.au3

Valeur de retour

Succès: Retourne 1.
Échec: Retourne 0.

Remarques

Par défaut, les contrôles utilisent la police définit par GUISetFont().
Consultez l'Appendice pour une liste complète des polices Windows et les versions de Windows dans lesquelles elles sont prises en charge.

La taille peut contenir un nombre décimal comme 8.5.

Pour certains contrôles tels que les Label, la taille par défaut peut être de 8,5 au lieu de 9 en accord avec les valeurs du thème de Windows.

Pour le paramètre Quality consultez MSDN, certaines installations de Windows XP nécessite CLEARTYPE_QUALITY = 5

En relation

GUICtrlCreate..., GUISetFont

Exemple

#include <FontConstants.au3>
#include <GUIConstantsEx.au3>

Example()

Func Example()
    ; Type de police à utiliser pour les contrôles.
    Local Const $sFont = "Comic Sans Ms"

    ; Crée une GUI avec différents contrôles.
    Local $hGUI = GUICreate("Example", 300, 200)

    ; Crée des contrôles Label.
    GUICtrlCreateLabel("Une chaîne soulignée", 10, 10, 185, 17)
    GUICtrlSetFont(-1, 9, $FW_NORMAL, $GUI_FONTUNDER, $sFont) ; Définit la police du contrôle précédent.

    Local $idLabel2 = GUICtrlCreateLabel("Une chaîne en italique", 10, 30, 185, 17)
    GUICtrlSetFont($idLabel2, 9, $FW_NORMAL, $GUI_FONTITALIC, $sFont) ; Définit la police de $iLabel2.

    Local $idLabel3 = GUICtrlCreateLabel("Une chaîne barrée", 10, 50, 290, 17)
    GUICtrlSetFont($idLabel3, 9, $FW_NORMAL, $GUI_FONTSTRIKE, $sFont) ; Définit la police de $iLabel3.

    Local $idButtonClose = GUICtrlCreateButton("Close", 210, 170, 85, 25)

    ; Affiche la GUI.
    GUISetState(@SW_SHOW, $hGUI)

    ; Boucle jusqu'à ce que l'utilisateur quitte.
    Local $idMsg
    Do
        $idMsg = GUIGetMsg()
    Until ($idMsg = $GUI_EVENT_CLOSE) Or ($idMsg = $idButtonClose)

    ; Supprime la GUI précédente et tous ses contrôles.
    GUIDelete($hGUI)
EndFunc   ;==>Example