QLineEdit Class
Le widget QLineEdit est un éditeur de texte à une ligne. En savoir plus...
| En-tête : | #include <QLineEdit> |
| CMake : | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake : | QT += widgets |
| Hérite de : | QWidget |
Types publics
| enum | ActionPosition { LeadingPosition, TrailingPosition } |
| enum | EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit } |
Propriétés
|
|
Fonctions publiques
| QLineEdit(QWidget *parent = nullptr) | |
| QLineEdit(const QString &contents, QWidget *parent = nullptr) | |
| virtual | ~QLineEdit() |
| void | addAction(QAction *action, QLineEdit::ActionPosition position) |
| QAction * | addAction(const QIcon &icon, QLineEdit::ActionPosition position) |
| Qt::Alignment | alignment() const |
| void | backspace() |
| QCompleter * | completer() const |
| QMenu * | createStandardContextMenu() |
| void | cursorBackward(bool mark, int steps = 1) |
| void | cursorForward(bool mark, int steps = 1) |
| Qt::CursorMoveStyle | cursorMoveStyle() const |
| int | cursorPosition() const |
| int | cursorPositionAt(const QPoint &pos) |
| void | cursorWordBackward(bool mark) |
| void | cursorWordForward(bool mark) |
| void | del() |
| void | deselect() |
| QString | displayText() const |
| bool | dragEnabled() const |
| QLineEdit::EchoMode | echoMode() const |
| void | end(bool mark) |
| bool | hasAcceptableInput() const |
| bool | hasFrame() const |
| bool | hasSelectedText() const |
| void | home(bool mark) |
| QString | inputMask() const |
| void | insert(const QString &newText) |
| bool | isClearButtonEnabled() const |
| bool | isModified() const |
| bool | isReadOnly() const |
| bool | isRedoAvailable() const |
| bool | isUndoAvailable() const |
| int | maxLength() const |
| QString | placeholderText() const |
| QString | selectedText() const |
| int | selectionEnd() const |
| int | selectionLength() const |
| int | selectionStart() const |
| void | setAlignment(Qt::Alignment flag) |
| void | setClearButtonEnabled(bool enable) |
| void | setCompleter(QCompleter *c) |
| void | setCursorMoveStyle(Qt::CursorMoveStyle style) |
| void | setCursorPosition(int) |
| void | setDragEnabled(bool b) |
| void | setEchoMode(QLineEdit::EchoMode) |
| void | setFrame(bool) |
| void | setInputMask(const QString &inputMask) |
| void | setMaxLength(int) |
| void | setModified(bool) |
| void | setPlaceholderText(const QString &) |
| void | setReadOnly(bool) |
| void | setSelection(int start, int length) |
| void | setTextMargins(const QMargins &margins) |
| void | setTextMargins(int left, int top, int right, int bottom) |
| void | setValidator(const QValidator *v) |
| QString | text() const |
| QMargins | textMargins() const |
| const QValidator * | validator() const |
Fonctions publiques réimplémentées
| virtual bool | event(QEvent *e) override |
| virtual QVariant | inputMethodQuery(Qt::InputMethodQuery property) const override |
| virtual QSize | minimumSizeHint() const override |
| virtual QSize | sizeHint() const override |
| virtual void | timerEvent(QTimerEvent *e) override |
Slots publics
| void | clear() |
| void | copy() const |
| void | cut() |
| void | paste() |
| void | redo() |
| void | selectAll() |
| void | setText(const QString &) |
| void | undo() |
Signaux
| void | cursorPositionChanged(int oldPos, int newPos) |
| void | editingFinished() |
| void | inputRejected() |
| void | returnPressed() |
| void | selectionChanged() |
| void | textChanged(const QString &text) |
| void | textEdited(const QString &text) |
Fonctions protégées
| QRect | cursorRect() const |
| virtual void | initStyleOption(QStyleOptionFrame *option) const |
Fonctions protégées réimplémentées
| virtual void | changeEvent(QEvent *ev) override |
| virtual void | contextMenuEvent(QContextMenuEvent *event) override |
| virtual void | dragEnterEvent(QDragEnterEvent *e) override |
| virtual void | dragLeaveEvent(QDragLeaveEvent *e) override |
| virtual void | dragMoveEvent(QDragMoveEvent *e) override |
| virtual void | dropEvent(QDropEvent *e) override |
| virtual void | focusInEvent(QFocusEvent *e) override |
| virtual void | focusOutEvent(QFocusEvent *e) override |
| virtual void | inputMethodEvent(QInputMethodEvent *e) override |
| virtual void | keyPressEvent(QKeyEvent *event) override |
| virtual void | keyReleaseEvent(QKeyEvent *e) override |
| virtual void | mouseDoubleClickEvent(QMouseEvent *e) override |
| virtual void | mouseMoveEvent(QMouseEvent *e) override |
| virtual void | mousePressEvent(QMouseEvent *e) override |
| virtual void | mouseReleaseEvent(QMouseEvent *e) override |
| virtual void | paintEvent(QPaintEvent *) override |
Description détaillée

Un champ de saisie en ligne permet aux utilisateurs de saisir et de modifier une seule ligne de texte brut à l'aide de fonctions d'édition utiles, notamment annuler et refaire, couper et coller, ainsi que glisser-déposer.
En modifiant l’ echoMode() d’un champ de saisie en ligne, celui-ci peut également être utilisé comme champ en écriture seule pour des données telles que les mots de passe.
QTextEdit est une classe associée qui permet l'édition de texte enrichi sur plusieurs lignes.
Restrictions sur le texte
Utilisez ` maxLength ` pour définir la longueur maximale autorisée d'un texte. Vous pouvez utiliser ` inputMask ` et ` setValidator()` pour restreindre davantage le contenu du texte.
Modification du texte
Vous pouvez modifier le texte à l'aide de setText() ou insert(). Utilisez text() pour récupérer le texte et displayText() pour récupérer le texte affiché (qui peut être différent, voir EchoMode). Vous pouvez sélectionner le texte à l'aide de setSelection() ou selectAll(), puis cut(), copy() et paste() sur la sélection. Pour aligner le texte, utilisez setAlignment().
Lorsque le texte change, le signal textChanged() est émis. Lorsque le texte change d’une autre manière que par l’appel de setText(), le signal textEdited() est émis. Lorsque le curseur est déplacé, le signal cursorPositionChanged() est émis. Et lorsque la touche Retour ou Entrée est enfoncée, le signal returnPressed() est émis.
Lorsque l'édition du texte est terminée, soit parce que la zone d'édition a perdu le focus, soit parce que la touche Retour ou Entrée a été enfoncée, le signal editingFinished() est émis.
Si le champ de saisie perd le focus sans qu’aucune modification de texte n’ait été effectuée, le signal ` editingFinished()` n’est pas émis.
Si un validateur est défini sur la zone de saisie, les signaux ` returnPressed()` et `editingFinished()` ne seront émis que si le validateur renvoie la valeur ` QValidator::Acceptable`.
Pour plus d’informations sur les nombreuses façons d’utiliser QLineEdit, consultez l’exemple « Line Edits Example », qui propose également une sélection d’exemples illustrant les effets de diverses propriétés et validateurs sur les données d’entrée et de sortie fournies par l’utilisateur.
Définition d’un cadre
Par défaut, les QLineEdit possèdent un cadre conforme aux directives stylistiques de la plateforme. Vous pouvez désactiver ce cadre en appelant la méthode ` setFrame(false)`.
Raccourcis clavier par défaut
Le tableau ci-dessous décrit les raccourcis clavier par défaut.
Remarque : la zone de saisie propose également un menu contextuel (généralement accessible par un clic droit) qui présente certaines des options d'édition répertoriées ci-dessous.
| Raccourci clavier | Action |
|---|---|
| Flèche gauche | Déplace le curseur d'un caractère vers la gauche. |
| Maj + Flèche gauche | Déplace et sélectionne le texte d'un caractère vers la gauche. |
| Flèche droite | Déplace le curseur d'un caractère vers la droite. |
| Maj + Flèche droite | Déplace et sélectionne le texte d'un caractère vers la droite. |
| Début | Déplace le curseur au début de la ligne. |
| Fin | Place le curseur à la fin de la ligne. |
| Retour arrière | Supprime le caractère situé à gauche du curseur. |
| Ctrl+Retour arrière | Supprime le mot situé à gauche du curseur. |
| Suppr | Supprime le caractère situé à droite du curseur. |
| Ctrl+Suppr | Supprime le mot situé à droite du curseur. |
| Ctrl+A | Sélectionne tout. |
| Ctrl+C | Copie le texte sélectionné dans le presse-papiers. |
| Ctrl+Insert | Copie le texte sélectionné dans le presse-papiers. |
| Ctrl+K | Supprime jusqu'à la fin de la ligne. |
| Ctrl+V | Colle le texte du presse-papiers dans la zone d'édition. |
| Maj+Insert | Colle le texte du presse-papiers dans la zone de saisie. |
| Ctrl+X | Supprime le texte sélectionné et le copie dans le presse-papiers. |
| Maj+Suppr | Supprime le texte sélectionné et le copie dans le presse-papiers. |
| Ctrl+Z | Annule la dernière opération. |
| Ctrl+Y | Rétablit la dernière opération annulée. |
Toute autre combinaison de touches correspondant à un caractère valide entraînera l'insertion de ce caractère dans la zone de saisie.
Voir également QTextEdit, QLabel, QComboBox et l’exemple « Line Edits ».
Documentation sur les types de membres
enum QLineEdit::ActionPosition
Ce type d'énumération décrit la manière dont un champ de saisie doit afficher les widgets d'action à ajouter.
| Constante | Valeur | Description |
|---|---|---|
QLineEdit::LeadingPosition | 0 | Le widget s'affiche à gauche du texte lorsque l'on utilise la direction de mise en page « Qt::LeftToRight », ou à droite lorsque l'on utilise « Qt::RightToLeft », respectivement. |
QLineEdit::TrailingPosition | 1 | Le widget s’affiche à droite du texte lorsque l’on utilise la direction de mise en page Qt::LeftToRight ou à gauche lorsque l’on utilise Qt::RightToLeft, respectivement. |
Voir également addAction(), removeAction() et QWidget::layoutDirection.
enum QLineEdit::EchoMode
Ce type d'énumération définit la manière dont un champ de saisie doit afficher son contenu.
| Constante | Valeur | Description |
|---|---|---|
QLineEdit::Normal | 0 | Affiche les caractères au fur et à mesure de leur saisie. Il s'agit du comportement par défaut. |
QLineEdit::NoEcho | 1 | N'affiche rien. Cela peut être utile pour les mots de passe, où même la longueur du mot de passe doit rester secrète. |
QLineEdit::Password | 2 | Affiche des caractères de masquage de mot de passe spécifiques à la plate-forme à la place des caractères réellement saisis. |
QLineEdit::PasswordEchoOnEdit | 3 | Affiche les caractères uniquement pendant leur saisie. Sinon, affiche les caractères comme avec ` Password`. |
Voir également setEchoMode() et echoMode().
Documentation sur les propriétés
[read-only] acceptableInput : bool
Cette propriété indique si la saisie respecte la contrainte « inputMask » et les règles de validation.
Par défaut, cette propriété est définie sur « true ».
Fonctions d'accès :
| bool | hasAcceptableInput() const |
Voir également ` setInputMask()` et ` setValidator()`.
alignment : Qt::Alignment
Cette propriété définit l'alignement de la zone de saisie.
L'alignement horizontal et vertical est autorisé ici ; la valeur « Qt::AlignJustify » correspondra à « Qt::AlignLeft ».
Par défaut, cette propriété contient une combinaison de « Qt::AlignLeft » et « Qt::AlignVCenter ».
Fonctions d’accès :
| Qt::Alignment | alignment() const |
| void | setAlignment(Qt::Alignment flag) |
Voir également Qt::Alignment.
clearButtonEnabled : bool
Cette propriété détermine si le champ de saisie affiche un bouton « Effacer » lorsqu'il n'est pas vide.
Si cette option est activée, la zone de saisie affiche un bouton « clear » à la fin lorsqu’elle contient du texte. Sinon, la zone de saisie n’affiche pas de bouton « clear » (valeur par défaut).
Fonctions d'accès :
| bool | isClearButtonEnabled() const |
| void | setClearButtonEnabled(bool enable) |
Voir également addAction() et removeAction().
cursorMoveStyle : Qt::CursorMoveStyle
Cette propriété définit le mode de déplacement du curseur dans ce champ de saisie.
Lorsque cette propriété est définie sur « Qt::VisualMoveStyle », la zone de saisie utilise un mode de déplacement visuel. L'utilisation de la touche fléchée gauche entraîne toujours le déplacement du curseur vers la gauche, quel que soit le sens d'écriture du texte. Le même comportement s'applique à la touche fléchée droite.
Lorsque la propriété est définie sur « Qt::LogicalMoveStyle » (valeur par défaut), dans un bloc de texte s'écrivant de gauche à droite (LTR), l'utilisation de la touche fléchée gauche fait avancer le curseur, tandis que l'utilisation de la touche fléchée droite le fait reculer. Si le bloc de texte s'écrit de droite à gauche (RTL), le comportement inverse s'applique.
Fonctions d’accès :
| Qt::CursorMoveStyle | cursorMoveStyle() const |
| void | setCursorMoveStyle(Qt::CursorMoveStyle style) |
cursorPosition : int
Cette propriété contient la position actuelle du curseur dans ce champ de saisie.
La définition de la position du curseur entraîne un rafraîchissement de l'affichage lorsque cela est nécessaire.
Par défaut, cette propriété contient la valeur 0.
Fonctions d'accès :
| int | cursorPosition() const |
| void | setCursorPosition(int) |
[read-only] displayText : QString
Cette propriété contient le texte affiché.
Si echoMode vaut Normal, cette fonction renvoie la même valeur que text(). Si EchoMode vaut Password ou PasswordEchoOnEdit, elle renvoie une chaîne composée de caractères de masquage de mot de passe spécifiques à la plate-forme (par exemple « ****** »). Si EchoMode vaut NoEcho, elle renvoie une chaîne vide.
Par défaut, cette propriété contient une chaîne vide.
Fonctions d'accès :
| QString | displayText() const |
Voir également setEchoMode(), text() et EchoMode.
dragEnabled : bool
Cette propriété détermine si la zone de saisie déclenche un glissement lorsque l'utilisateur appuie sur le bouton de la souris et la déplace sur du texte sélectionné.
Le glissement est désactivé par défaut.
Fonctions d'accès :
| bool | dragEnabled() const |
| void | setDragEnabled(bool b) |
echoMode : EchoMode
Cette propriété définit le mode d'affichage de la zone de saisie.
Le mode d'affichage détermine la manière dont le texte saisi dans la zone de saisie est affiché (ou répété) à l'utilisateur.
Le paramètre le plus courant est « Normal », dans lequel le texte saisi par l'utilisateur s'affiche tel quel. « QLineEdit » prend également en charge des modes permettant de masquer ou de dissimuler le texte saisi : il s'agit notamment de « NoEcho », « Password » et « PasswordEchoOnEdit ».
Cet paramètre a une incidence sur l'affichage du widget et sur la possibilité de copier ou de faire glisser le texte.
Par défaut, cette propriété est définie sur « Normal ».
Fonctions d'accès :
| QLineEdit::EchoMode | echoMode() const |
| void | setEchoMode(QLineEdit::EchoMode) |
Voir également EchoMode et displayText().
frame : bool
Cette propriété détermine si le champ de saisie s'affiche avec ou sans cadre.
Si cette propriété est activée (valeur par défaut), la zone de saisie s'affiche à l'intérieur d'un cadre. Dans le cas contraire, elle s'affiche sans cadre.
Fonctions d'accès :
| bool | hasFrame() const |
| void | setFrame(bool) |
[read-only] hasSelectedText : bool
Cette propriété est vraie si du texte est sélectionné.
La méthode hasSelectedText() renvoie « true » si tout ou partie du texte a été sélectionné par l'utilisateur. Dans le cas contraire, elle renvoie « false ».
Par défaut, cette propriété vaut « false ».
Fonctions d'accès :
| bool | hasSelectedText() const |
Voir également ` selectedText()`.
inputMask : QString
Cette propriété contient le masque de validation des données saisies.
Définit le masque de validation de l'QLineEdit. Des validateurs peuvent être utilisés à la place ou en complément des masques ; voir setValidator(). La valeur par défaut est une chaîne vide, ce qui signifie qu'aucun masque de saisie n'est utilisé.
Pour désactiver le masque et revenir au fonctionnement normal de l'QLineEdit, transmettez une chaîne vide.
Le masque de saisie est une chaîne de caractères servant de modèle de saisie. Elle peut contenir les éléments suivants :
| Caractères de masque | Définissent l’ Category des caractères de saisie considérés comme valides à cet emplacement. |
| Méta-caractères | Diverses significations spéciales (voir détails ci-dessous). |
| Séparateurs | Tous les autres caractères sont considérés comme des séparateurs immuables. |
Le tableau suivant présente les caractères de masque et méta pouvant être utilisés dans un masque de saisie.
| Caractère de masque | Signification |
|---|---|
A | Caractère de la catégorie « Lettre » obligatoire, tel que A-Z, a-z. |
a | Caractère de la catégorie « Lettre » autorisé mais non obligatoire. |
N | Caractère de la catégorie « Lettre » ou « Chiffre » obligatoire, par exemple A-Z, a-z, 0-9. |
n | Caractère de la catégorie « Lettre » ou « Chiffre » autorisé mais non obligatoire. |
X | Tout caractère non vide obligatoire. |
x | Tout caractère non vide autorisé mais non obligatoire. |
9 | Caractère de la catégorie « Chiffre » obligatoire, par exemple 0-9. |
0 | Caractère de la catégorie « Nombre » autorisé mais non obligatoire. |
D | Caractère de la catégorie « Nombre » et supérieur à zéro obligatoire, tel que 1 à 9. |
d | Caractère de la catégorie « Nombre » et supérieur à zéro autorisé mais non obligatoire, par exemple 1 à 9. |
# | Caractère de la catégorie « Nombre », ou signe plus/moins autorisé mais non obligatoire. |
H | Caractère hexadécimal obligatoire. A-F, a-f, 0-9. |
h | Caractère hexadécimal autorisé mais non obligatoire. |
B | Caractère binaire obligatoire. 0-1. |
b | Caractère binaire autorisé mais non obligatoire. |
| Caractère méta | Signification |
> | Tous les caractères alphabétiques suivants sont mis en majuscules. |
< | Tous les caractères alphabétiques suivants sont en minuscules. |
! | Désactive la conversion de casse. |
;c | Termine le masque de saisie et définit le caractère d'espacement sur « c ». |
[ ] { } | Réservé. |
\ | Utilisez « \ » pour échapper les caractères spéciaux listés ci-dessus afin de les utiliser comme séparateurs. |
Lors de sa création ou de son effacement, la zone d’édition sera remplie d’une copie de la chaîne du masque de saisie dans laquelle les méta-caractères ont été supprimés et les caractères du masque ont été remplacés par le caractère d’espacement (par défaut, un « space »).
Lorsqu’un masque de saisie est défini, la méthode text() renvoie une copie modifiée du contenu de la zone de saisie, dans laquelle tous les caractères d’espacement ont été supprimés. Le contenu non modifié peut être lu à l’aide de displayText().
La méthode hasAcceptableInput() renvoie false si le contenu actuel de la zone de saisie ne répond pas aux exigences du masque de saisie.
Exemples :
| Masque | Remarques |
|---|---|
000.000.000.000;_ | Adresse IP ; les espaces sont autorisés _. |
HH:HH:HH:HH:HH:HH;_ | Adresse MAC |
0000-00-00 | Date ISO ; les espaces sont space |
>AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;# | Numéro de licence ; les champs vides correspondent à # et tous les caractères (alphabétiques) sont convertis en majuscules. |
Pour contrôler une plage (par exemple, pour une adresse IP), utilisez des masques avec validators.
Fonctions d’accès :
| QString | inputMask() const |
| void | setInputMask(const QString &inputMask) |
Voir également maxLength, QChar::isLetter(), QChar::isNumber() et QChar::digitValue().
maxLength : int
Cette propriété détermine la longueur maximale autorisée du texte.
Si le texte est trop long, il est tronqué à cette limite.
En cas de troncature, tout texte sélectionné est désélectionné, la position du curseur est définie sur 0 et la première partie de la chaîne s'affiche.
Si la zone de saisie dispose d’un masque de saisie, celui-ci définit la longueur maximale de la chaîne.
Par défaut, cette propriété a pour valeur 32767.
Fonctions d'accès :
| int | maxLength() const |
| void | setMaxLength(int) |
Voir également inputMask.
modified : bool
Cette propriété indique si le contenu de la zone de saisie a été modifié par l'utilisateur.
L'indicateur « modified » n'est jamais lu par QLineEdit; sa valeur par défaut est « false » et il passe à « true » dès que l'utilisateur modifie le contenu de la zone d'édition.
Cela s'avère utile pour les cas où il faut fournir une valeur par défaut sans connaître celle-ci au départ (par exemple, si elle dépend d’autres champs du formulaire). Commencez par afficher le champ de saisie sans valeur par défaut optimale, puis, une fois la valeur par défaut connue, si la méthode modified() renvoie « false » (l’utilisateur n’a saisi aucun texte), insérez la valeur par défaut.
L’appel de ` setText()` réinitialise l’indicateur « modified » à `false`.
Fonctions d'accès :
| bool | isModified() const |
| void | setModified(bool) |
placeholderText : QString
Cette propriété contient le texte de remplacement du champ de saisie.
La définition de cette propriété fait en sorte que le champ de saisie affiche un texte de remplacement grisé tant que le champ est vide.
Normalement, un champ de saisie vide affiche le texte de remplacement même lorsqu'il a le focus. Cependant, si le contenu est centré horizontalement, le texte de remplacement n'apparaît pas sous le curseur lorsque le champ de saisie a le focus.
Par défaut, cette propriété contient une chaîne vide.
Fonctions d'accès :
| QString | placeholderText() const |
| void | setPlaceholderText(const QString &) |
Voir également text().
readOnly : bool
Cette propriété s'applique que la zone de saisie soit en lecture seule ou non.
En mode lecture seule, l'utilisateur peut toujours copier le texte dans le presse-papiers ou effectuer un glisser-déposer (si la méthode ` echoMode()` renvoie ` Normal`), mais il ne peut pas le modifier.
QLineEdit Le curseur n'apparaît pas en mode lecture seule.
Par défaut, cette propriété est false.
Fonctions d'accès :
| bool | isReadOnly() const |
| void | setReadOnly(bool) |
Voir également setEnabled().
[read-only] redoAvailable : bool
Cette propriété indique si la fonction « Refaire » est disponible.
La fonction « Redo » devient disponible dès que l'utilisateur a effectué une ou plusieurs opérations d'annulation sur le texte saisi dans la zone d'édition.
Par défaut, cette propriété est définie sur « false ».
Fonctions d'accès :
| bool | isRedoAvailable() const |
[read-only] selectedText : QString
Cette propriété contient le texte sélectionné.
S'il n'y a pas de texte sélectionné, la valeur de cette propriété est une chaîne vide.
Par défaut, cette propriété contient une chaîne vide.
Fonctions d'accès :
| QString | selectedText() const |
Voir également hasSelectedText().
text : QString
Cette propriété contient le texte de la zone de saisie.
La définition de cette propriété efface la sélection, efface l'historique des annulations et des reprises, place le curseur à la fin de la ligne et réinitialise la propriété modified à false. Le texte n'est pas validé lorsqu'il est inséré à l'aide de la méthode setText().
Le texte est tronqué à la longueur spécifiée par la propriété ` maxLength()`.
Par défaut, cette propriété contient une chaîne vide.
Fonctions d'accès :
| QString | text() const |
| void | setText(const QString &) |
Signal de notification :
| void | textChanged(const QString &text) |
Voir également ` insert()` et ` clear()`.
[read-only] undoAvailable : bool
Cette propriété indique si la fonction « Annuler » est disponible.
La fonction « Annuler » devient disponible dès que l'utilisateur a modifié le texte dans le champ de saisie.
Par défaut, cette propriété est définie sur « false ».
Fonctions d'accès :
| bool | isUndoAvailable() const |
Documentation des fonctions membres
[explicit] QLineEdit::QLineEdit(QWidget *parent = nullptr)
Crée un champ de saisie de texte vide.
La longueur maximale du texte est fixée à 32 767 caractères.
L'argument ` parent ` est transmis au constructeur ` QWidget `.
Voir également setText() et setMaxLength().
[explicit] QLineEdit::QLineEdit(const QString &contents, QWidget *parent = nullptr)
Crée un champ de saisie contenant le texte « contents » en tant qu'élément enfant de parent.
La position du curseur est placée à la fin de la ligne et la longueur maximale du texte est fixée à 32 767 caractères.
Voir également text() et setMaxLength().
[virtual noexcept] QLineEdit::~QLineEdit()
Supprime le champ de saisie.
void QLineEdit::addAction(QAction *action, QLineEdit::ActionPosition position)
Ajoute l'action à la liste des actions disponibles sur position.
QAction *QLineEdit::addAction(const QIcon &icon, QLineEdit::ActionPosition position)
Crée une nouvelle action avec l'icon ion fournie à l'adresse position.
Il s'agit d'une fonction surchargée.
void QLineEdit::backspace()
Si aucun texte n'est sélectionné, cette commande supprime le caractère situé à gauche du curseur et déplace celui-ci d'une position vers la gauche. Si un texte est sélectionné, le curseur est déplacé au début du texte sélectionné, puis celui-ci est supprimé.
Voir aussi del().
[override virtual protected] void QLineEdit::changeEvent(QEvent *ev)
Réimplémente : QWidget::changeEvent(QEvent *event).
[slot] void QLineEdit::clear()
Efface le contenu du champ de saisie.
Voir également setText() et insert().
QCompleter *QLineEdit::completer() const
Renvoie l'QCompleter e actuelle qui fournit les suggestions de saisie.
Voir aussi setCompleter().
[override virtual protected] void QLineEdit::contextMenuEvent(QContextMenuEvent *event)
Réimplémente : QWidget::contextMenuEvent(QContextMenuEvent *event).
Affiche le menu contextuel standard créé avec createStandardContextMenu().
Si vous ne souhaitez pas que la zone de saisie dispose d’un menu contextuel, vous pouvez définir son paramètre ` contextMenuPolicy ` sur ` Qt::NoContextMenu`. Pour personnaliser le menu contextuel, réimplémentez cette fonction. Pour étendre le menu contextuel standard, réimplémentez cette fonction, appelez ` createStandardContextMenu()` et étendez le menu renvoyé.
void LineEdit::contextMenuEvent(QContextMenuEvent *event)
{
QMenu *menu = createStandardContextMenu();
menu->addAction(tr("My Menu Item"));
//...
menu->exec(event->globalPos());
delete menu;
}Le paramètre ` event ` permet d'obtenir la position du curseur de la souris au moment où l'événement a été généré.
Voir également setContextMenuPolicy().
[slot] void QLineEdit::copy() const
Copie le texte sélectionné dans le presse-papiers, s'il y en a, et si la fonction echoMode() renvoie Normal.
Voir également cut() et paste().
QMenu *QLineEdit::createStandardContextMenu()
Crée le menu contextuel standard, qui s'affiche lorsque l'utilisateur clique avec le bouton droit de la souris sur la zone d'édition. Il est appelé depuis le gestionnaire par défaut ` contextMenuEvent()`. La propriété du menu contextuel est transférée à l'appelant.
void QLineEdit::cursorBackward(bool mark, int steps = 1)
Déplace le curseur de steps caractères vers l'arrière. Si mark est vrai, chaque caractère survolé est ajouté à la sélection. Si mark est faux, la sélection est effacée.
Voir aussi cursorForward().
void QLineEdit::cursorForward(bool mark, int steps = 1)
Déplace le curseur de steps caractères vers l'avant. Si mark est vrai, chaque caractère survolé est ajouté à la sélection. Si mark est faux, la sélection est effacée.
Voir aussi cursorBackward().
int QLineEdit::cursorPositionAt(const QPoint &pos)
Renvoie la position du curseur sous le point pos.
[signal] void QLineEdit::cursorPositionChanged(int oldPos, int newPos)
Ce signal est émis chaque fois que le curseur se déplace. La position précédente est indiquée par oldPos, et la nouvelle position par newPos.
Voir également setCursorPosition() et cursorPosition().
[protected] QRect QLineEdit::cursorRect() const
Renvoie un rectangle qui englobe le curseur de la zone de saisie.
void QLineEdit::cursorWordBackward(bool mark)
Déplace le curseur d'un mot vers l'arrière. Si la variable « mark » est définie sur « true », le mot est également sélectionné.
Voir aussi cursorWordForward().
void QLineEdit::cursorWordForward(bool mark)
Déplace le curseur d'un mot vers l'avant. Si mark est vrai, le mot est également sélectionné.
Voir aussi cursorWordBackward().
[slot] void QLineEdit::cut()
Copie le texte sélectionné dans le presse-papiers et le supprime, s'il y en a un, et si echoMode() renvoie Normal.
Si le validateur actuel interdit la suppression du texte sélectionné, la fonction cut() effectuera une copie sans suppression.
Voir également copy(), paste() et setValidator().
void QLineEdit::del()
Si aucun texte n'est sélectionné, supprime le caractère situé à droite du curseur. Si du texte est sélectionné, le curseur se place au début du texte sélectionné, puis celui-ci est supprimé.
Voir aussi backspace().
void QLineEdit::deselect()
Désélectionne tout texte sélectionné.
Voir également setSelection() et selectAll().
[override virtual protected] void QLineEdit::dragEnterEvent(QDragEnterEvent *e)
Réimplémente : QWidget::dragEnterEvent(QDragEnterEvent *event).
[override virtual protected] void QLineEdit::dragLeaveEvent(QDragLeaveEvent *e)
Réimplémente : QWidget::dragLeaveEvent(QDragLeaveEvent *event).
[override virtual protected] void QLineEdit::dragMoveEvent(QDragMoveEvent *e)
Réimplémente : QWidget::dragMoveEvent(QDragMoveEvent *event).
[override virtual protected] void QLineEdit::dropEvent(QDropEvent *e)
Réimplémente : QWidget::dropEvent(QDropEvent *event).
[signal] void QLineEdit::editingFinished()
Ce signal est émis lorsque l'on appuie sur la touche Retour ou Entrée, ou si le champ de saisie perd le focus et que son contenu a changé depuis la dernière fois que ce signal a été émis.
Remarque : si une méthode ` validator()` ou ` inputMask()` est définie sur la zone de saisie et que la touche Entrée/Retour est utilisée, le signal `editingFinished()` ne sera émis que si la saisie respecte la méthode ` inputMask()` et que la méthode ` validator()` renvoie ` QValidator::Acceptable`.
void QLineEdit::end(bool mark)
Place le curseur de texte à la fin de la ligne, s'il ne s'y trouve pas déjà. Si la variable « mark » est définie à « true », le texte est sélectionné jusqu'à la dernière position. Dans le cas contraire, tout texte sélectionné est désélectionné lorsque le curseur est déplacé.
Voir aussi home().
[override virtual] bool QLineEdit::event(QEvent *e)
Réimplémente : QWidget::event(QEvent *event).
[override virtual protected] void QLineEdit::focusInEvent(QFocusEvent *e)
Réimplémente : QWidget::focusInEvent(QFocusEvent *event).
[override virtual protected] void QLineEdit::focusOutEvent(QFocusEvent *e)
Réimplémente : QWidget::focusOutEvent(QFocusEvent *event).
void QLineEdit::home(bool mark)
Place le curseur de texte au début de la ligne, s'il ne s'y trouve pas déjà. Si la variable « mark » est définie sur « true », le texte est sélectionné jusqu'à la première position. Sinon, tout texte sélectionné est désélectionné lorsque le curseur est déplacé.
Voir aussi end().
[virtual protected] void QLineEdit::initStyleOption(QStyleOptionFrame *option) const
Initialisez ` option ` avec les valeurs fournies à l'adresse suivante : QLineEdit. Cette méthode est utile pour les sous-classes qui ont besoin d'un ` QStyleOptionFrame`, mais ne souhaitent pas renseigner elles-mêmes toutes les informations.
Voir également QStyleOption::initFrom().
[override virtual protected] void QLineEdit::inputMethodEvent(QInputMethodEvent *e)
Réimplémente : QWidget::inputMethodEvent(QInputMethodEvent *event).
[override virtual] QVariant QLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const
Réimplémente : ` QWidget::inputMethodQuery` (requête `Qt::InputMethodQuery`) const.
[signal] void QLineEdit::inputRejected()
Ce signal est émis lorsque l'utilisateur utilise une touche qui n'est pas considérée comme une entrée valide. Par exemple, si l'utilisation d'une touche entraîne le retour de la valeur « Invalid » par l'appel validate() du validateur. Un autre cas de figure se présente lorsque l'utilisateur tente de saisir plus de caractères que la longueur maximale autorisée dans le champ de saisie.
Remarque : ce signal est également émis lorsqu’une partie seulement du texte est acceptée. Par exemple, si une longueur maximale est définie et que le texte du presse-papiers dépasse cette longueur lors de son collage.
void QLineEdit::insert(const QString &newText)
Supprime tout texte sélectionné, insère newText et valide le résultat. Si celui-ci est valide, la fonction attribue le nouveau texte comme nouveau contenu du champ de saisie.
Voir également ` setText()` et ` clear()`.
[override virtual protected] void QLineEdit::keyPressEvent(QKeyEvent *event)
Réimplémente : QWidget::keyPressEvent(QKeyEvent *event).
Convertit l'event de la touche enfoncée en une action de champ de saisie.
made valid Si la touche Retour ou Entrée est utilisée et que le texte actuel est valide (ou peut être validé par le validateur), le signal returnPressed() est émis.
Voir également Default Key Bindings.
[override virtual protected] void QLineEdit::keyReleaseEvent(QKeyEvent *e)
Réimplémente : QWidget::keyReleaseEvent(QKeyEvent *event).
[override virtual] QSize QLineEdit::minimumSizeHint() const
Réimplémente une fonction d'accès pour la propriété : QWidget::minimumSizeHint.
Renvoie la taille minimale de la zone de saisie.
La largeur renvoyée est généralement suffisante pour afficher au moins un caractère.
[override virtual protected] void QLineEdit::mouseDoubleClickEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseDoubleClickEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mouseMoveEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mousePressEvent(QMouseEvent *e)
Réimplémente : QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mouseReleaseEvent(QMouseEvent *e)
Réimplémente : QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::paintEvent(QPaintEvent *)
Réimplémente : QWidget::paintEvent(QPaintEvent *event).
[slot] void QLineEdit::paste()
Insère le texte du presse-papiers à la position du curseur, en supprimant tout texte sélectionné, à condition que la zone de saisie ne soit pas en état d'read-only.
Si le résultat final n'est pas valide selon la valeur actuelle de ` validator`, aucune action n'est effectuée.
Voir également copy() et cut().
[slot] void QLineEdit::redo()
Répète la dernière opération si la valeur de « redo » est « available ».
[signal] void QLineEdit::returnPressed()
Ce signal est émis lorsque l'on appuie sur la touche Retour ou Entrée.
Remarque : si une méthode ` validator()` ou ` inputMask()` est définie sur le champ de saisie, le signal `returnPressed()` ne sera émis que si la saisie respecte la méthode ` inputMask()` et si la méthode ` validator()` renvoie la valeur ` QValidator::Acceptable`.
[slot] void QLineEdit::selectAll()
Sélectionne tout le texte (le met en surbrillance) et place le curseur à la fin.
Remarque : cette fonction est utile lorsqu'une valeur par défaut a été insérée, car si l'utilisateur saisit du texte avant de cliquer sur le widget, le texte sélectionné sera supprimé.
Voir également setSelection() et deselect().
[signal] void QLineEdit::selectionChanged()
Ce signal est émis chaque fois que la sélection change.
Voir également hasSelectedText() et selectedText().
int QLineEdit::selectionEnd() const
Renvoie l'index du caractère situé immédiatement après la sélection dans la zone de saisie (ou -1 si aucun texte n'est sélectionné).
Voir également selectedText(), selectionStart() et selectionLength().
int QLineEdit::selectionLength() const
Renvoie la longueur de la sélection.
Voir également selectedText(), selectionStart() et selectionEnd().
int QLineEdit::selectionStart() const
Renvoie l'index du premier caractère sélectionné dans la zone de saisie (ou -1 si aucun texte n'est sélectionné).
Voir également selectedText(), selectionEnd() et selectionLength().
void QLineEdit::setCompleter(QCompleter *c)
Configure ce champ de saisie pour qu'il propose des suggestions de saisie automatique provenant du service « completer », c. Le mode de saisie automatique est défini à l'aide de la fonction QCompleter::setCompletionMode().
Pour utiliser un QCompleter avec un QValidator ou un QLineEdit::inputMask, vous devez vous assurer que le modèle fourni à QCompleter contient des entrées valides. Vous pouvez utiliser le QSortFilterProxyModel pour vous assurer que le modèle de QCompleter ne contient que des entrées valides.
Pour supprimer le module de complétion et désactiver la complétion automatique, transmettez un nullptr.
Voir également completer() et QCompleter.
void QLineEdit::setSelection(int start, int length)
Sélectionne le texte à partir de la position start et sur une longueur de length caractères. Les longueurs négatives sont autorisées.
Voir également deselect(), selectAll() et selectedText().
void QLineEdit::setTextMargins(const QMargins &margins)
Définit l'margins e autour du texte contenu dans le cadre.
Voir aussi textMargins().
void QLineEdit::setTextMargins(int left, int top, int right, int bottom)
Définit les marges autour du texte à l'intérieur du cadre aux tailles suivantes : left, top, right et bottom.
Voir également textMargins().
void QLineEdit::setValidator(const QValidator *v)
Définit le validateur des valeurs du champ de saisie en ligne sur « v ».
Les signaux « returnPressed() » et « editingFinished() » de la zone de saisie ne seront émis que si v valide le contenu de la zone de saisie comme Acceptable. L’utilisateur peut modifier le contenu pour lui attribuer n’importe quelle valeur Intermediate pendant la saisie, mais il ne pourra pas modifier le texte pour lui attribuer une valeur que v valide comme Invalid.
Cela vous permet de restreindre le texte qui sera enregistré une fois la modification terminée, tout en laissant aux utilisateurs suffisamment de liberté pour modifier le texte d’un état valide à un autre.
Pour supprimer le validateur de saisie actuel, transmettez nullptr. Le paramètre par défaut consiste à ne pas utiliser de validateur de saisie (toute saisie est acceptée jusqu’à ce que maxLength()) soit appelé.
Voir également validator(), hasAcceptableInput(), QIntValidator, QDoubleValidator et QRegularExpressionValidator.
[override virtual] QSize QLineEdit::sizeHint() const
Réimplémente une fonction d'accès pour la propriété : QWidget::sizeHint.
Renvoie une taille recommandée pour le widget.
La largeur renvoyée, en pixels, est généralement suffisante pour environ 15 à 20 caractères.
[signal] void QLineEdit::textChanged(const QString &text)
Ce signal est émis chaque fois que le texte change. L'argument ` text ` correspond au nouveau texte.
Contrairement à la fonction textEdited(), ce signal est également émis lorsque le texte est modifié par programmation, par exemple en appelant la fonction setText().
Remarque : signalde notification pour la propriété text.
[signal] void QLineEdit::textEdited(const QString &text)
Ce signal est émis chaque fois que le texte est modifié. L'argument text correspond au nouveau texte.
Contrairement à la fonction textChanged(), ce signal n'est pas émis lorsque le texte est modifié par programmation, par exemple en appelant la fonction setText().
QMargins QLineEdit::textMargins() const
Renvoie les marges de texte du widget.
Voir aussi setTextMargins().
[override virtual] void QLineEdit::timerEvent(QTimerEvent *e)
Réimplémente : QObject::timerEvent(QTimerEvent *event).
[slot] void QLineEdit::undo()
Annule la dernière opération si la fonction « undo » est définie sur « available ». Désélectionne toute sélection en cours et définit le point de départ de la sélection à la position actuelle du curseur.
const QValidator *QLineEdit::validator() const
Renvoie un pointeur vers le validateur d'entrée actuel, ou nullptr si aucun validateur n'a été défini.
Voir aussi setValidator().
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.