QLineEdit

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

Inheritance diagram of PySide2.QtWidgets.QLineEdit

Synopsis

Functions

Slots

Signals

Detailed Description

../../_images/windows-lineedit.png

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 and redo, cut and paste, and drag and drop (see setDragEnabled() ).

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 text can be constrained to maxLength() . The text can be arbitrarily constrained using a validator() or an inputMask() , or both. When switching between a validator and an input mask on the same line edit, it is best to clear the validator or input mask to prevent undefined behavior.

A related class is QTextEdit which allows multi-line, rich text editing.

You can change the text with setText() or insert() . The text is retrieved with text() ; the displayed text (which may be different, see EchoMode ) is retrieved with displayText() . Text can be selected with setSelection() or selectAll() , and the selection can be cut() , copy() ied and paste() d. The text can be aligned with setAlignment() .

When the text changes the textChanged() signal is emitted; when the text changes other than by calling setText() the textEdited() signal is emitted; when the cursor is moved the cursorPositionChanged() signal is emitted; and when the Return or Enter key is pressed the returnPressed() signal is emitted.

When editing is finished, either because the line edit lost focus or Return/Enter is pressed the editingFinished() signal is emitted.

Note that if there is a validator set on the line edit, the returnPressed() / editingFinished() signals will only be emitted if the validator returns Acceptable .

By default, QLineEdits have a frame as specified by platform style guides; you can turn it off by calling setFrame (false).

The default key bindings are described below. The line edit also provides a context menu (usually invoked by a right mouse click) that presents some of these editing options. .. _desc:

Keypress

Action

Left Arrow

Moves the cursor one character to the left.

Shift+Left Arrow

Moves and selects text one character to the left.

Right Arrow

Moves the cursor one character to the right.

Shift+Right Arrow

Moves and selects text one character to the right.

Home

Moves the cursor to the beginning of the line.

End

Moves the cursor to the end of the line.

Backspace

Deletes the character to the left of the cursor.

Ctrl+Backspace

Deletes the word to the left of the cursor.

Delete

Deletes the character to the right of the cursor.

Ctrl+Delete

Deletes the word to the right of the cursor.

Ctrl+A

Select all.

Ctrl+C

Copies the selected text to the clipboard.

Ctrl+Insert

Copies the selected text to the clipboard.

Ctrl+K

Deletes to the end of the line.

Ctrl+V

Pastes the clipboard text into line edit.

Shift+Insert

Pastes the clipboard text into line edit.

Ctrl+X

Deletes the selected text and copies it to the clipboard.

Shift+Delete

Deletes the selected text and copies it to the clipboard.

Ctrl+Z

Undoes the last operation.

Ctrl+Y

Redoes the last undone operation.

Any other key sequence that represents a valid character, will cause the character to be inserted into the line edit.

class QLineEdit([parent=None])

QLineEdit(arg__1[, parent=None])

param parent

QWidget

param arg__1

unicode

Constructs a line edit with no text.

The maximum text length is set to 32767 characters.

The parent argument is sent to the QWidget constructor.

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 argument is sent to the QWidget constructor.

PySide2.QtWidgets.QLineEdit.ActionPosition

This enum type describes how a line edit should display the action widgets to be added.

Constant

Description

QLineEdit.LeadingPosition

The widget is displayed to the left of the text when using layout direction Qt::LeftToRight or to the right when using Qt::RightToLeft, respectively.

QLineEdit.TrailingPosition

The widget is displayed to the right of the text when using layout direction Qt::LeftToRight or to the left when using Qt::RightToLeft, respectively.

PySide2.QtWidgets.QLineEdit.EchoMode

This enum type describes how a line edit should display its contents.

Constant

Description

QLineEdit.Normal

Display characters as they are entered. This is the default.

QLineEdit.NoEcho

Do not display anything. This may be appropriate for passwords where even the length of the password should be kept secret.

QLineEdit.Password

Display platform-dependent password mask characters instead of the characters actually entered.

QLineEdit.PasswordEchoOnEdit

Display characters as they are entered while editing otherwise display characters as with Password.

PySide2.QtWidgets.QLineEdit.addAction(icon, position)
Parameters
Return type

QAction

PySide2.QtWidgets.QLineEdit.addAction(action, position)
Parameters

Adds the action to the list of actions at the position .

PySide2.QtWidgets.QLineEdit.alignment()
Return type

Alignment

See also

setAlignment()

PySide2.QtWidgets.QLineEdit.backspace()

If no text is selected, deletes the character to the left of the text cursor and moves the cursor one position to the left. If any text is selected, the cursor is moved to the beginning of the selected text and the selected text is deleted.

See also

del()

PySide2.QtWidgets.QLineEdit.clear()

Clears the contents of the line edit.

See also

setText() insert()

PySide2.QtWidgets.QLineEdit.completer()
Return type

QCompleter

Returns the current QCompleter that provides completions.

See also

setCompleter()

PySide2.QtWidgets.QLineEdit.copy()

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

See also

cut() paste()

PySide2.QtWidgets.QLineEdit.createStandardContextMenu()
Return type

QMenu

This function creates the standard context menu which is shown when the user clicks on the line edit with the right mouse button. It is called from the default contextMenuEvent() handler. The popup menu’s ownership is transferred to the caller.

PySide2.QtWidgets.QLineEdit.cursorBackward(mark[, steps=1])
Parameters
  • markbool

  • stepsint

Moves the cursor back steps characters. If mark is true each character moved over is added to the selection; if mark is false the selection is cleared.

See also

cursorForward()

PySide2.QtWidgets.QLineEdit.cursorForward(mark[, steps=1])
Parameters
  • markbool

  • stepsint

Moves the cursor forward steps characters. If mark is true each character moved over is added to the selection; if mark is false the selection is cleared.

See also

cursorBackward()

PySide2.QtWidgets.QLineEdit.cursorMoveStyle()
Return type

CursorMoveStyle

PySide2.QtWidgets.QLineEdit.cursorPosition()
Return type

int

PySide2.QtWidgets.QLineEdit.cursorPositionAt(pos)
Parameters

posQPoint

Return type

int

Returns the cursor position under the point pos .

PySide2.QtWidgets.QLineEdit.cursorPositionChanged(arg__1, arg__2)
Parameters
  • arg__1int

  • arg__2int

PySide2.QtWidgets.QLineEdit.cursorRect()
Return type

QRect

Returns a rectangle that includes the lineedit cursor.

PySide2.QtWidgets.QLineEdit.cursorWordBackward(mark)
Parameters

markbool

Moves the cursor one word backward. If mark is true, the word is also selected.

PySide2.QtWidgets.QLineEdit.cursorWordForward(mark)
Parameters

markbool

Moves the cursor one word forward. If mark is true, the word is also selected.

PySide2.QtWidgets.QLineEdit.cut()

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

If the current validator disallows deleting the selected text, will copy without deleting.

PySide2.QtWidgets.QLineEdit.del_()

If no text is selected, deletes the character to the right of the text cursor. If any text is selected, the cursor is moved to the beginning of the selected text and the selected text is deleted.

See also

backspace()

PySide2.QtWidgets.QLineEdit.deselect()

Deselects any selected text.

PySide2.QtWidgets.QLineEdit.displayText()
Return type

unicode

PySide2.QtWidgets.QLineEdit.dragEnabled()
Return type

bool

See also

setDragEnabled()

PySide2.QtWidgets.QLineEdit.echoMode()
Return type

EchoMode

See also

setEchoMode()

PySide2.QtWidgets.QLineEdit.editingFinished()
PySide2.QtWidgets.QLineEdit.end(mark)
Parameters

markbool

Moves the text cursor to the end of the line unless it is already there. If mark is true, text is selected towards the last position; otherwise, any selected text is unselected if the cursor is moved.

See also

home()

PySide2.QtWidgets.QLineEdit.getTextMargins()

Returns the widget’s text margins for left , top , right , and bottom .

See also

setTextMargins()

PySide2.QtWidgets.QLineEdit.hasAcceptableInput()
Return type

bool

PySide2.QtWidgets.QLineEdit.hasFrame()
Return type

bool

PySide2.QtWidgets.QLineEdit.hasSelectedText()
Return type

bool

PySide2.QtWidgets.QLineEdit.home(mark)
Parameters

markbool

Moves the text cursor to the beginning of the line unless it is already there. If mark is true, text is selected towards the first position; otherwise, any selected text is unselected if the cursor is moved.

See also

end()

PySide2.QtWidgets.QLineEdit.initStyleOption(option)
Parameters

optionQStyleOptionFrame

Initialize option with the values from this QLineEdit . This method is useful for subclasses when they need a QStyleOptionFrame , but don’t want to fill in all the information themselves.

See also

initFrom()

PySide2.QtWidgets.QLineEdit.inputMask()
Return type

unicode

See also

setInputMask()

PySide2.QtWidgets.QLineEdit.inputMethodQuery(property, argument)
Parameters
  • propertyInputMethodQuery

  • argument – object

Return type

object

PySide2.QtWidgets.QLineEdit.inputRejected()
PySide2.QtWidgets.QLineEdit.insert(arg__1)
Parameters

arg__1 – unicode

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

See also

setText() clear()

PySide2.QtWidgets.QLineEdit.isClearButtonEnabled()
Return type

bool

PySide2.QtWidgets.QLineEdit.isModified()
Return type

bool

PySide2.QtWidgets.QLineEdit.isReadOnly()
Return type

bool

PySide2.QtWidgets.QLineEdit.isRedoAvailable()
Return type

bool

PySide2.QtWidgets.QLineEdit.isUndoAvailable()
Return type

bool

PySide2.QtWidgets.QLineEdit.maxLength()
Return type

int

See also

setMaxLength()

PySide2.QtWidgets.QLineEdit.paste()

Inserts the clipboard’s text at the cursor position, deleting any selected text, providing the line edit is not read-only .

If the end result would not be acceptable to the current validator , nothing happens.

See also

copy() cut()

PySide2.QtWidgets.QLineEdit.placeholderText()
Return type

unicode

PySide2.QtWidgets.QLineEdit.redo()

Redoes the last operation if redo is available .

PySide2.QtWidgets.QLineEdit.returnPressed()
PySide2.QtWidgets.QLineEdit.selectAll()

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

PySide2.QtWidgets.QLineEdit.selectedText()
Return type

unicode

PySide2.QtWidgets.QLineEdit.selectionChanged()
PySide2.QtWidgets.QLineEdit.selectionEnd()
Return type

int

Returns the index of the character directly after the selection in the line edit or -1 if no text is selected.

PySide2.QtWidgets.QLineEdit.selectionLength()
Return type

int

Returns the length of the selection.

PySide2.QtWidgets.QLineEdit.selectionStart()
Return type

int

Returns the index of the first selected character in the line edit or -1 if no text is selected.

PySide2.QtWidgets.QLineEdit.setAlignment(flag)
Parameters

flagAlignment

See also

alignment()

PySide2.QtWidgets.QLineEdit.setClearButtonEnabled(enable)
Parameters

enablebool

PySide2.QtWidgets.QLineEdit.setCompleter(completer)
Parameters

completerQCompleter

Sets this line edit to provide auto completions from the completer, c . The completion mode is set using setCompletionMode() .

To use a QCompleter with a QValidator or inputMask , you need to ensure that the model provided to QCompleter contains valid entries. You can use the QSortFilterProxyModel to ensure that the QCompleter ‘s model contains only valid entries.

If c == 0, removes the current completer, effectively disabling auto completion.

PySide2.QtWidgets.QLineEdit.setCursorMoveStyle(style)
Parameters

styleCursorMoveStyle

PySide2.QtWidgets.QLineEdit.setCursorPosition(arg__1)
Parameters

arg__1int

See also

cursorPosition()

PySide2.QtWidgets.QLineEdit.setDragEnabled(b)
Parameters

bbool

See also

dragEnabled()

PySide2.QtWidgets.QLineEdit.setEchoMode(arg__1)
Parameters

arg__1EchoMode

See also

echoMode()

PySide2.QtWidgets.QLineEdit.setFrame(arg__1)
Parameters

arg__1bool

See also

hasFrame()

PySide2.QtWidgets.QLineEdit.setInputMask(inputMask)
Parameters

inputMask – unicode

See also

inputMask()

PySide2.QtWidgets.QLineEdit.setMaxLength(arg__1)
Parameters

arg__1int

See also

maxLength()

PySide2.QtWidgets.QLineEdit.setModified(arg__1)
Parameters

arg__1bool

See also

isModified()

PySide2.QtWidgets.QLineEdit.setPlaceholderText(arg__1)
Parameters

arg__1 – unicode

PySide2.QtWidgets.QLineEdit.setReadOnly(arg__1)
Parameters

arg__1bool

See also

isReadOnly()

PySide2.QtWidgets.QLineEdit.setSelection(arg__1, arg__2)
Parameters
  • arg__1int

  • arg__2int

Selects text from position start and for length characters. Negative lengths are allowed.

PySide2.QtWidgets.QLineEdit.setText(arg__1)
Parameters

arg__1 – unicode

See also

text()

PySide2.QtWidgets.QLineEdit.setTextMargins(margins)
Parameters

marginsQMargins

Sets the margins around the text inside the frame.

See also textMargins() .

PySide2.QtWidgets.QLineEdit.setTextMargins(left, top, right, bottom)
Parameters
  • leftint

  • topint

  • rightint

  • bottomint

Sets the margins around the text inside the frame to have the sizes left , top , right , and bottom .

See also getTextMargins() .

See also

textMargins()

PySide2.QtWidgets.QLineEdit.setValidator(arg__1)
Parameters

arg__1QValidator

Sets this line edit to only accept input that the validator, v , will accept. This allows you to place any arbitrary constraints on the text which may be entered.

If v == 0, removes the current input validator. The initial setting is to have no input validator (i.e. any input is accepted up to maxLength() ).

PySide2.QtWidgets.QLineEdit.text()
Return type

unicode

See also

setText()

PySide2.QtWidgets.QLineEdit.textChanged(arg__1)
Parameters

arg__1 – unicode

PySide2.QtWidgets.QLineEdit.textEdited(arg__1)
Parameters

arg__1 – unicode

PySide2.QtWidgets.QLineEdit.textMargins()
Return type

QMargins

Returns the widget’s text margins.

See also

setTextMargins()

PySide2.QtWidgets.QLineEdit.undo()

Undoes the last operation if undo is available . Deselects any current selection, and updates the selection start to the current cursor position.

PySide2.QtWidgets.QLineEdit.validator()
Return type

QValidator

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

See also

setValidator()