Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Classes  ·  Annotées  ·  Hiérarchie  ·  Fonctions  ·  Structure  · 

QLineEdit Class Reference


The QLineEdit widget is a one-line text editor. More...

#include <qlineedit.h>

Inherits QWidget.

List of all member functions.

Public Members

Public Slots

Signals

Protected Members

Properties

TypeNameREADWRITEOptions
QStringtexttextsetText 
intmaxLengthmaxLengthsetMaxLength 
boolframeframesetFrame 
EchoModeechoModeechoModesetEchoMode 
QStringdisplayTextdisplayText  
intcursorPositioncursorPositionsetCursorPosition 
AlignmentalignmentalignmentsetAlignment 
booleditededitedsetEdited 
boolhasMarkedTexthasMarkedText  
QStringmarkedTextmarkedText  

Detailed Description

The QLineEdit widget is a one-line text editor.

A line edit allows the user to enter and edit a single line of plain text, with a useful collection of editing functions, including undo & redo, cut & paste, and drag & drop.

By changing the echoMode() of a line edit it can also be used as a "write-only" field, for inputs such as passwords.

The length of the field can be constrained to a maxLength(), or the value can be arbitrarily constrained by setting a validator().

A closely related class is QMultiLineEdit which allows multi-line editing.

The default QLineEdit object has its own frame as specified by the Windows/Motif style guides, you can turn off the frame by calling setFrame( FALSE ).

The default key bindings are described in keyPressEvent(). A right-mouse-button menu presents a number of the editing commands to the user.

See also QMultiLineEdit, QLabel, QComboBox, GUI Design Handbook: Field, Entry, and GUI Design Handbook: Field, Required.

Examples: layout/layout.cpp popup/popup.cpp xform/xform.cpp


Member Type Documentation

QLineEdit::EchoMode

This enum type describes how QLineEdit displays its contents. The defined values are:
  • Normal - display characters as they are entered. This is the default.
  • NoEcho - do not display anything. This may be appropriate for passwords where even the length of the password should be kept secret.
  • Password - display asterisks instead of the characters actually entered.

See also setEchoMode(), echoMode() and QMultiLineEdit::EchoMode.


Member Function Documentation

QLineEdit::QLineEdit ( QWidget * parent, const char * name=0 )

Constructs a line edit with no text.

The maximum text length is set to 32767 characters.

The parent and name arguments are sent to the QWidget constructor.

See also setText() and setMaxLength().

QLineEdit::QLineEdit ( const QString & contents, QWidget * parent, const char * name=0 )

Constructs a line edit containing the text contents.

The cursor position is set to the end of the line and the maximum text length to 32767 characters.

The parent and name arguments are sent to the QWidget constructor.

See also text() and setMaxLength().

QLineEdit::~QLineEdit ()

Destructs the line edit.

int QLineEdit::alignment () const

Returns the alignment of the line edit. Possible Values are Qt::AlignLeft, Qt::AlignRight and Qt::Align(H)Center.

See also setAlignment() and Qt::AlignmentFlags.

void QLineEdit::backspace ()

Deletes the character to the left of the text cursor and moves the cursor one position to the left. If a text has been marked by the user (e.g. by clicking and dragging) the cursor will be put at the beginning of the marked text and the marked text will be removed.

See also del().

void QLineEdit::clear () [slot]

Syntactic sugar for setText( "" ), provided to match no-argument signals.

void QLineEdit::clearValidator () [slot]

This slot is equivalent to setValidator( 0 ).

void QLineEdit::copy () const

Copies the marked text to the clipboard, if there is any and if echoMode() is Normal.

See also cut() and paste().

void QLineEdit::cursorLeft ( bool mark, int steps = 1 )

Moves the cursor leftwards one or more characters.

See also cursorRight().

int QLineEdit::cursorPosition () const

Returns the current cursor position for this line edit.

See also setCursorPosition().

void QLineEdit::cursorRight ( bool mark, int steps = 1 )

Moves the cursor rightwards one or more characters.

See also cursorLeft().

void QLineEdit::cursorWordBackward ( bool mark )

Moves the cursor one word to the left. If mark is TRUE, the text is marked.

See also cursorWordForward().

void QLineEdit::cursorWordForward ( bool mark )

Moves the cursor one word to the right. If mark is TRUE, the text is marked.

See also cursorWordBackward().

void QLineEdit::cut ()

Copies the marked text to the clipboard and deletes it, if there is any.

If the current validator disallows deleting the marked text, cut() will copy it but not delete it.

See also copy() and paste().

void QLineEdit::del ()

Deletes the character on the right side of the text cursor. If a text has been marked by the user (e.g. by clicking and dragging) the cursor will be put at the beginning of the marked text and the marked text will be removed.

See also backspace().

void QLineEdit::deselect () [slot]

Deselects all text (i.e. removes marking) and leaves the cursor at the current position.

QString QLineEdit::displayText () const

Returns the text that is displayed. This is normally the same as text(), but can be e.g. "*****" if EchoMode is Password or "" if it is NoEcho.

See also setEchoMode(), text() and EchoMode.

void QLineEdit::dragEnterEvent ( QDragEnterEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::dropEvent ( QDropEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

QLineEdit::EchoMode QLineEdit::echoMode() const

Returns the echo mode of the line edit.

See also setEchoMode() and EchoMode.

bool QLineEdit::edited () const

Returns the edited flag of the line edit. If this returns FALSE, the line edit's contents have not been changed since the construction of the QLineEdit (or the last call to either setText() or setEdited( FALSE ), if any). If it returns true, the contents have been edited, or setEdited( TRUE ) has been called.

See also setEdited().

void QLineEdit::end ( bool mark )

Moves the text cursor to the right end of the line. If mark is TRUE text will be marked towards the last position, if not any marked text will be unmarked if the cursor is moved.

See also home().

bool QLineEdit::event ( QEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QObject.

void QLineEdit::focusInEvent ( QFocusEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::focusOutEvent ( QFocusEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

bool QLineEdit::frame () const

Returns TRUE if the line edit draws itself inside a frame, FALSE if it draws itself without any frame.

The default is to use a frame.

See also setFrame().

bool QLineEdit::hasMarkedText () const

Returns TRUE if part of the text has been marked by the user (e.g. by clicking and dragging).

See also markedText().

void QLineEdit::home ( bool mark )

Moves the text cursor to the left end of the line. If mark is TRUE text will be marked towards the first position, if not any marked text will be unmarked if the cursor is moved.

See also end().

void QLineEdit::insert ( const QString & newText ) [slot]

Removes any selected text, inserts newText, validates the result and if it is valid, sets it as the new contents of the line edit.

bool QLineEdit::isReadOnly () const

Returns whether the line-edit is read-only.

See also setReadOnly().

void QLineEdit::keyPressEvent ( QKeyEvent * e ) [virtual protected]

Converts a key press into a line edit action.

If return or enter is pressed and the current text is valid (or can be made valid by the validator), the signal returnPressed is emitted.

The default key bindings are:

  • Left Arrow Move the cursor one character leftwards.
  • Right Arrow Move the cursor one character rightwards.
  • Backspace Delete the character to the left of the cursor.
  • Home Move the cursor to the beginning of the line.
  • End Move the cursor to the end of the line.
  • Delete Delete the character to the right of the cursor.
  • Shift - Left Arrow Move and mark text one character leftwards.
  • Shift - Right Arrow Move and mark text one character rightwards.
  • Control-A Move the cursor to the beginning of the line.
  • Control-B Move the cursor one character leftwards.
  • Control-C Copy the marked text to the clipboard.
  • Control-D Delete the character to the right of the cursor.
  • Control-E Move the cursor to the end of the line.
  • Control-F Move the cursor one character rightwards.
  • Control-H Delete the character to the left of the cursor.
  • Control-K Delete to end of line
  • Control-V Paste the clipboard text into line edit.
  • Control-X Move the marked text to the clipboard.
  • Control-Z Undo the last operation.
  • Control-Y Redo the last undone operation.
In addition, the following key bindings are used on Windows:
  • Shift - Delete Cut the marked text, copy to clipboard
  • Shift - Insert Paste the clipboard text into line edit
  • Control - Insert Copy the marked text to the clipboard

All other keys with valid ASCII codes insert themselves into the line.

Reimplemented from QWidget.

void QLineEdit::leaveEvent ( QEvent * ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

QString QLineEdit::markedText () const

Returns the text marked by the user (e.g. by clicking and dragging), or a null string if no text is marked.

See also hasMarkedText().

int QLineEdit::maxLength () const

Returns the maximum permitted length of the text in the editor.

See also setMaxLength().

QSize QLineEdit::minimumSizeHint () const [virtual]

Returns a minimum size for the line edit.

The width returned is enough for at least one character.

Reimplemented from QWidget.

void QLineEdit::mouseDoubleClickEvent ( QMouseEvent * ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::mouseMoveEvent ( QMouseEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::mousePressEvent ( QMouseEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::mouseReleaseEvent ( QMouseEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::paintEvent ( QPaintEvent * e ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::paste ()

Inserts the clipboard's text at the cursor position, deleting any previous marked text.

If the end result is not acceptable for the current validator, nothing happens.

See also copy() and cut().

void QLineEdit::repaintArea ( int from, int to ) [protected]

Repaints all characters from from to to. If cursorPos is between from and to, ensures that cursorPos is visible.

void QLineEdit::resizeEvent ( QResizeEvent * ) [virtual protected]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

void QLineEdit::returnPressed () [signal]

This signal is emitted when the return or enter key is pressed.

void QLineEdit::selectAll () [slot]

Selects all text (i.e. marks it) and moves the cursor to the end. This is useful when a default value has been inserted, since if the user types before clicking on the widget the selected text will be erased.

void QLineEdit::setAlignment ( int flag )

Sets the alignment of the line edit. Possible Values are Qt::AlignLeft, Qt::AlignRight and Qt::Align(H)Center - see Qt::AlignmentFlags.

See also alignment().

void QLineEdit::setCursorPosition ( int newPos ) [virtual]

Sets the cursor position for this line edit to newPos and repaints accordingly.

See also cursorPosition().

void QLineEdit::setEchoMode ( EchoMode mode )

Sets the echo mode of the line edit widget.

The echo modes available are:

  • Normal - display characters as they are entered. This is the default.
  • NoEcho - do not display anything. This may be appropriate for passwords where even the length of the password should be kept secret.
  • Password - display asterisks instead of the characters actually entered.

The widget's display, and the ability to copy or drag the text is affected by this setting.

See also echoMode(), EchoMode and displayText().

void QLineEdit::setEdited ( bool on )

Sets the edited flag of this line edit to on. The edited flag is never read by QLineEdit, and is changed to TRUE whenever the user changes its contents.

This is useful e.g. for things that need to provide a default value, but cannot find the default at once. Just open the line edit without the best default and when the default is known, check the edited() return value and set the line edit's contents if the user has not started editing the line edit.

See also edited().

void QLineEdit::setEnabled ( bool e ) [virtual]

Reimplemented for internal reasons; the API is not affected.

void QLineEdit::setFont ( const QFont & f ) [virtual]

Reimplemented for internal reasons; the API is not affected.

void QLineEdit::setFrame ( bool enable ) [virtual]

Sets the line edit to draw itself inside a frame if enable is TRUE, and to draw itself without any frame if enable is FALSE.

The default is TRUE.

See also frame().

void QLineEdit::setMaxLength ( int m ) [virtual]

Set the maximum length of the text in the editor. If the text is too long, it is chopped off at the limit. Any marked text will be unmarked. The cursor position is set to 0 and the first part of the string is shown.

See also maxLength().

void QLineEdit::setPalette ( const QPalette & p ) [virtual]

Reimplemented for internal reasons; the API is not affected.

void QLineEdit::setReadOnly ( bool enable )

Enables or disables read-only mode, where the user can cut-and-paste or drag-and-drop the text, but cannot edit it. They never see a cursor in this case.

See also setEnabled() and isReadOnly().

void QLineEdit::setSelection ( int start, int length ) [virtual]

Sets the marked area of this line edit to start at start and be length characters long.

void QLineEdit::setText ( const QString & text ) [virtual slot]

Sets the line edit text to text, clears the selection and moves the cursor to the end of the line.

If necessary the text is truncated to maxLength().

See also text().

Examples: xform/xform.cpp

void QLineEdit::setValidator ( const QValidator * v ) [virtual]

Sets this line edit to accept input only as accepted by v, allowing arbitrary constraints on the text which the user can edit.

If v == 0, remove the current input validator. The default is no input validator (ie. any input is accepted up to maxLength()).

See also validator() and QValidator.

QSize QLineEdit::sizeHint () const [virtual]

Returns a recommended size for the widget.

The width returned is enough for a few characters, typically 15 to 20.

Reimplemented from QWidget.

QSizePolicy QLineEdit::sizePolicy () const [virtual]

Reimplemented for internal reasons; the API is not affected.

Reimplemented from QWidget.

QString QLineEdit::text () const

Returns the text in the line.

See also setText().

void QLineEdit::textChanged ( const QString & ) [signal]

This signal is emitted every time the text changes. The argument is the new text.

bool QLineEdit::validateAndSet ( const QString & newText, int newPos, int newMarkAnchor, int newMarkDrag )

Validates and perhaps sets this line edit to contain newText with the cursor at position newPos, with marked text from newMarkAnchor to newMarkDrag. Returns TRUE if it changes the line edit and FALSE if it doesn't.

Linebreaks in newText are converted to spaces, and it is truncated to maxLength() before testing its validity.

Repaints and emits textChanged() if appropriate.

const QValidator * QLineEdit::validator () const

Returns a pointer to the current input validator, or 0 if no validator has been set.

See also setValidator().


Search the documentation, FAQ, qt-interest archive and more (uses www.trolltech.com):


This file is part of the Qt toolkit, copyright © 1995-2005 Trolltech, all rights reserved.

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 94
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 42
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 6
Page suivante

Le Qt Quarterly au hasard

Logo

Requêtes sérieuses avec XQuery

Qt Quarterly est la revue trimestrielle proposée par Nokia et à destination des développeurs Qt. Ces articles d'une grande qualité technique sont rédigés par des experts Qt. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 2.3
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web