# 6.3. Propriétés des Widgets Qt supportés

Le chapitre suivant donne une vision complète des widgets de la boîte à outils Qt actuellement supportés. Pour avoir une meilleure compréhension des propriétés, elles sont séparées de leur héritage. Comme tous les widgets héritent de `QWidget`, cette classe est décrite en premier. Toutes les propriétés de `QWidget` sont disponibles pour tous les autres widgets donc elles ne seront pas listées à chaque fois. Pour les groupes de widgets qui héritent d'une sous-classe abstraite de `QWidget` comme classe de base, les propriétés de la classe de base sont listées en premier (bien que cette classe ne représente pas elle-même un widget dans l'éditeur de boîtes de dialogue). Ensuite, les propriétés du widget pour le widget disponible du groupe contiennent les propriétés qui lui sont spécifiques. Pour une meilleure compréhension, l'arbre d'héritage des widgets disponibles est donné ci-dessous :

- QWidget

  - QButton (abstrait)

    - QCheckBox

    - QPushButton

    - QRadioButton

  - QComboBox

  - QFrame (actuellement abstrait)

    - QGroupBox

    - QLCDNumber

    - QLabel

    - QProgressBar

    - QScrollView (actuellement abstrait)

      - QListView

    - QSpinBox

    - QTableView (abstrait)

      - QListBox

      - QMultiLineEdit

  - QLineEdit

  - QScrollBar

  - QSlider

## 6.3.1. Propriétés de QWidget

`QWidget` est la classe de base pour presque tous les widgets dans Qt et KDE. Les widgets qui héritent de `QWidget` permettront donc d'utiliser les mêmes paramètres dans la plupart des cas.

- Apparence :

  - BgColor: Couleur du fond du widget

  - BgMode : Mode du fond du widget

  - BgPalColor : Palette de couleur du fond

  - BgPixmap : Nom du fichier pour une image de fond

  - Cursor : Curseur au-dessus du widget

  - Font : Police du widget

  - MaskBitmap : Nom du fichier pour le bitmap de masque

- Code C++ :

  - AcceptsDrops : si défini à true, l'élément du widget acceptera les "dépots" par les mécanismes de glisser-déposer (NdT : drag'n drop mechanisms ) (le protocole de "glisser-déposer" de Qt , pas celui de KDE 1.x !)

  - Connections : connecte les signaux de l'élément aux slots

  - FocusProxy : l'élément qui donne son focus au widget.

  - HasFocus : définit si, par défaut, le widget a le focus. Notez que seulement un élément par boîte de dialogue peut avoir cette valeur à true

  - ResizeToParent : redimensionne le widget à la taille de son parent (non visible en mode édition)

  - VarName : Nom de variable de l'élément. Changez-le avec le nom qui décrit le but de l'élément.

- Général :

  - IsEnabled : définit si le widget acceptera les événements utilisateur

  - IsHidden : définit si l'élément est visible (false) ou caché (true)

  - Name : définit le nom du widget. Notez que le nom est différent de VarName dans le code C++.

- Géométrie :

  - Height : hauteur de l'élément

  - IsFixedSize :

  - MaxHeight : valeur maximale de Height

  - MaxWidth : valeur maximale de Width

  - MinHeight : valeur minimale de Height

  - MinWidth : valeur minimale de Width

  - SizeIncX : nombre de pixels pour le redimensionnement dans la direction X

  - SizeIncY : nombre de pixels pour le redimensionnement dans la direction Y

  - Width : largeur de l'élément

  - X : position horizontale (abscisse), comptée depuis le coin gauche

  - Y : position verticale (ordonnée), comptée du haut vers le bas

## 6.3.2. Widgets qui héritent de QButton

`QButton` est une classe de widget abstraite qui fournit des propriétés communes aux boutons.

Hérite de QWidget

Hérité par QCheckBox, QPushButton et QRadioButton.

- Apparence :

  - setPixmap : définit le nom du fichier de pixmap à utiliser

- Général :

  - setText : le texte sur les étiquettes, boutons et cases ; pré-définit aussi le texte pour les zones de saisie.

  - setAutoRepeat : si activé, le signal clicked() est émis à des intervalles réguliers lorsque le bouton est enfoncé. Aucun effet sur les boutons à bascule (NdT : toggle buttons).

  - setAutoResize : active l'auto-redimensionnement si true. Quand l'auto-redimensionnement est actif, le bouton se redimensionne lui-même lorsque son contenu a changé.

### 6.3.2.1. Propriétés de QCheckBox

Hérite de QWidget et QButton

- Général :

  - isChecked : (setChecked) définit si la case à cocher est cochée lors de sa construction

### 6.3.2.2. Propriétés de QPushButton

Hérite de QWidget et QButton

- Général :

  - isAutoDefault : (setAutoDefault) le bouton automatiquement par défaut (NdT : auto-default button) devient le bouton par défaut s'il reçoit le focus du clavier.

  - isDefault : (setDefault) il ne peut y a voir qu'un seul bouton par défaut et il est seulement autorisé dans les boîtes de dialogue (voir `QDialog`). Le bouton par défaut émet `clicked()` si l'utilisateur a appuyé sur la touche "Entrée".

  - isMenuButton : (setIsMenuButton) indique au bouton de dessiner un triangle d'indication de menu s'il est activé. Le menu doit être inséré séparément.

  - isToggleButton : (setToggleButton) fait d'un bouton un bouton à bascule, si bien que le bouton se comporte comme une case à cocher.

  - isToggledOn : (setOn) (public slot) bascule un bouton dans l'état "on".

### 6.3.2.3. Propriétés de QRadioButton

Hérite de QWidget et QButton

- Général :

  - isChecked : (setChecked) définit si le bouton radio est coché lors de la construction

## 6.3.3. Propriétés de QComboBox

Hérite de QWidget

(aucune propriété supplémentaire)

## 6.3.4. Widgets qui héritent de QFrame

Hérite de QWidget

Pour l'instant, seulement utilisée comme une classe abstraite.

- Apparence :

  - Margin (setMargin) : définit la marge, qui est la distance entre le pixel le plus à l'intérieur du cadre et celui qui est le plus à l'extérieur du contenu.

### 6.3.4.1. Propriétés de QGroupBox

Hérite de QWidget et QFrame

- Général :

  - Title : (setTitle) définit le titre du groupe d'éléments qui est affiché dans le cadre.

### 6.3.4.2. Propriétés de QLCDNumber

Hérite de QWidget et QFrame

- Général :

  - NumDigits : (setNumDigits) définit le nombre de chiffres affichés dans QLCDNumber

  - Value : (display) (public slot) définit la valeur initiale de QLCDNumber

### 6.3.4.3. Propriétés de QLabel

Hérite de QWidget et QFrame

- Apparence :

  - Margin (setMargin) : définit la marge qui est, pour QLabel , la distance du cadre à la première lettre du texte de l'étiquette, suivant l'alignement de l'étiquette.

- Code C++ :

  - Buddy : (setBuddy) définit le widget compagnon de l'étiquette.

- Général :

  - Text : (setText) définit le texte de l'étiquette.

  - isAutoResize : (setAutoResize) si true, l'étiquette se redimensionnera elle-même si son contenu a changé. Le coin en haut à gauche n'est pas déplacé.

### 6.3.4.4. Propriétés de QProgressBar

Hérite de QWidget et QFrame

- Général :

  - TotalSteps : (setTotalSteps) (public slot) définit le nombre total d'étapes de la barre de progression. Durant l'itération de l'action dont vous voulez afficher la progression, vous devez appeler setProgress(int) pour faire avancer l'étape de progression affichée à (int).

### 6.3.4.5. QScrollView

Hérite de QWidget et QFrame

Hérité par QListBox (abstrait pour l'instant)

Fournit un widget que l'on peut faire défiler et qui gère l'affichage d'un widget fils avec des barres de défilement verticale et horizontale.

#### 6.3.4.5.1. QListView

Hérite de QWidget, QFrame et QListView

Fournit une liste pour afficher hiérarchiquement des données, soit dans une table soit dans un arbre. Gère elle-même les barres de défilement à travers QScrollView.

- Apparence :

  - ListViewFont : (setFont()) définit la police des éléments de la ListView

  - ListViewPalette : (setPalette()) définit la palette des éléments de la ListView

  - TreeStepSize : (setTreeStepSize(int)) décalage en pixels entre un élément fils et son élément père

  - hScrollBarMode : mode de barre de défilement fourni par QScrollView pour la barre de défilement horizontale

  - isAllColumnsShowFocus : (setAllColumnsShowFocus(bool)) affiche le focus sur toutes les colonnes d'un élément

  - isMultiSelection : active les multi-sélections des éléments de la liste

  - isRootDecorated : active les symboles + et - pour ouvrir et fermer les arbres

  - vScrollBarMode : mode de barre de défilement fourni par QScrollView pour la barre de défilement verticale

- Général :

  - Entries : vous permet d'insérer une liste d'entrées qui sont pré-définies comme QListViewItems.

  - isAutoUpdate :

### 6.3.4.6. Propriétés de QSpinBox

Hérite de QWidget et QFrame

- Général :

  - MaxValue : définit la valeur maximale que l'utilisateur peut choisir

  - MinValue : définit la valeur minimale que l'utilisateur peut choisir

  - Prefix :

  - Suffix :

  - Value : valeur pré-définie quand le widget est affiché

  - isWrapping :

### 6.3.4.7. Widgets qui héritent de QTableView

Hérite de QWidget, QFrame et QTableView

Hérité par QListBox et QMultiLineEdit

#### 6.3.4.7.1. Propriétés de QListBox

Hérite de QWidget, QFrame et QTableView

- Général :

  - isAutoBottomScrollBar: (setAutoBottomScrollBar)

  - isAutoScroll : (setAutoScroll)

  - isAutoScrollBar : (setAutoScrollBar)

  - isAutoUpdate : (setAutoUpdate)

  - isBottomScrollBar : (setBottomScrollBar)

  - isDragSelect : (setDragSelect)

  - isSmoothScrolling : (setSmoothScrolling)

- Géométrie :

  - setFixedVisibleLines : définit une hauteur fixe pour le widget de façon à ce que le nombre de lignes de texte donné soit affiché en utilisant la police courante.

#### 6.3.4.7.2. Propriétés de QMultiLineEdit

Hérite de QWidget, QFrame et QTableView

- Général :

  - Text : (setText) (public slot) définit le texte du widget

  - isAutoUpdate : (setAutoUpdate) utilisé pour éviter le scintillement pendant de grandes modifications ; la vue n'est pas rafraîchie si désactivé.

  - isOverWriteMode : (setOverwriteMode) (public slot) définit si le mode écrasement est activé ou non.

  - isReadOnly : (setReadOnly) (public slot) rend le texte du widget en lecture seule ; désactive les entrées de texte.

  - isTextSelected : (selectAll)(public slot) marque tout le texte comme sélectionné

- Géométrie :

  - setFixedVisibleLines: définit une hauteur fixe pour le widget de façon à ce que le nombre de lignes de texte donné soient affichées en utilisant la police courante.

## 6.3.5. Propriétés de QLineEdit

Hérite de QWidget

- Général :

  - CursorPosition : (setCursorPosition) définit la position du curseur par défaut

  - MaxLength : (setMaxLength) définit la longueur maximale de la chaîne de caractères

  - Text : (setText) (public slot) définit le contenu affiché lors de la construction

  - hasFrame : (setFrame) dessine la zone de saisie dans un cadre de deux pixels, si activé

  - isTextSelected : (selectAll) (public slot) définit le texte à sélectionner.

## 6.3.6. Propriétés de QScrollBar

Hérite de QWidget et `QRangeControl`.

- Général :

  - MaxValue : définit la valeur maximale de la barre de défilement ; utilisé dans le constructeur (optionnel)

  - MinValue : définit la valeur minimale de la barre de défilement ; utilisé dans le constructeur (optionnel)

  - Orientation : (setOrientation) définit l'orientation de la barre de défilement à horizontale ou verticale

  - Value : définit la valeur initiale de la barre de défilement ; utilisé dans le constructeur (optionnel)

  - isTracking : (setTracking) si activé, la barre de défilement émet le signal `valueChanged()` lorsque la barre est déplacée ; sinon, seulement lorsque le bouton de la souris est relâché.

## 6.3.7. Propriétés de QSlider

Hérite de QWidget et `QRangeControl`.

- Général :

  - MaxValue : définit la valeur maximale de la glissière ; utilisé dans le constructeur (optionnel)

  - MinValue : définit la valeur minimale de la glissière ; utilisé dans le constructeur (optionnel)

  - Orientation : (setOrientation) définit l'orientation de la glissière à horizontale ou verticale

  - Value : (setValue) (public slot) utilise `QRangeControl::setValue()` pour définir la valeur

  - isTracking :(setTracking) si activé, la glissière émet le signal `valueChanged()` lorsque la barre est déplacée ; sinon, seulement lorsque le bouton de la souris est relâché.