Класс QLineEdit
Виджет QLineEdit — это однострочный текстовый редактор. Подробнее...
| Заголовок: | #include <QLineEdit> |
| qmake: | QT += widgets |
| Наследуется от: | QWidget |
Общие типы
| Перечисление | ActionPosition { LeadingPosition, TrailingPosition } |
| Перечисление | EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit } |
Свойства
|
|
Общедоступные функции
| QLineEdit(const QString &contents, QWidget *parent = nullptr) | |
| QLineEdit(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) |
| void | getTextMargins(int *left, int *top, int *right, int *bottom) const |
| 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(int left, int top, int right, int bottom) |
| void | setTextMargins(const QMargins &margins) |
| void | setValidator(const QValidator *v) |
| QString | text() const |
| QMargins | textMargins() const |
| const QValidator * | validator() const |
Реализованные публичные функции
| виртуальный bool | event(QEvent *e) override |
| виртуальный QVariant | inputMethodQuery(Qt::InputMethodQuery property) const override |
| виртуальный QSize | minimumSizeHint() const override |
| виртуальный QSize | sizeHint() const override |
Public Slots
| void | clear() |
| void | copy() const |
| void | cut() |
| void | paste() |
| void | redo() |
| void | selectAll() |
| void | setText(const QString &) |
| void | undo() |
Signals
| void | cursorPositionChanged(int oldPos, int newPos) |
| void | editingFinished() |
| void | inputRejected() |
| void | returnPressed() |
| void | selectionChanged() |
| void | textChanged(const QString &text) |
| void | textEdited(const QString &text) |
Protected Functions
| QRect | cursorRect() const |
| void | initStyleOption(QStyleOptionFrame *option) const |
Reimplemented Protected Functions
| виртуальный void | changeEvent(QEvent *ev) override |
| виртуальный void | contextMenuEvent(QContextMenuEvent *event) override |
| виртуальный void | dragEnterEvent(QDragEnterEvent *e) override |
| виртуальный void | dragLeaveEvent(QDragLeaveEvent *e) override |
| виртуальный void | dragMoveEvent(QDragMoveEvent *e) override |
| виртуальный void | dropEvent(QDropEvent *e) override |
| виртуальный void | focusInEvent(QFocusEvent *e) override |
| виртуальный void | focusOutEvent(QFocusEvent *e) override |
| виртуальный void | inputMethodEvent(QInputMethodEvent *e) override |
| виртуальный void | keyPressEvent(QKeyEvent *event) override |
| виртуальный void | mouseDoubleClickEvent(QMouseEvent *e) override |
| виртуальный void | mouseMoveEvent(QMouseEvent *e) override |
| виртуальный void | mousePressEvent(QMouseEvent *e) override |
| виртуальный void | mouseReleaseEvent(QMouseEvent *e) override |
| виртуальный void | paintEvent(QPaintEvent *) override |
Detailed Description
Поле ввода строки позволяет пользователю вводить и редактировать одну строку простого текста с полезной коллекцией функций редактирования, включая отмену и повтор, вырезание и вставку и перетаскивание (см. setDragEnabled()).
Изменив echoMode() поля ввода строки, его также можно использовать как поле "только для записи", например, для ввода паролей.
Длина текста может быть ограничена до maxLength(). Текст может быть произвольно ограничен с помощью validator() или inputMask(), или обоих. При переключении между валидатором и маской ввода в том же поле ввода строки лучше очистить валидатор или маску ввода, чтобы предотвратить неопределенное поведение.
Связанный класс — QTextEdit, который позволяет редактировать многострочный форматированный текст.
Вы можете изменить текст с помощью setText() или insert(). Текст извлекается с помощью text(); отображаемый текст (который может отличаться, см. EchoMode) извлекается с помощью displayText(). Текст можно выделить с помощью setSelection() или selectAll(), и выделение можно вырезать (cut()), скопировать (copy()), и вставить (paste()). Выравнивание текста можно изменить с помощью setAlignment().
При изменении текста генерируется сигнал textChanged; при изменении текста, отличном от вызова setText(), генерируется сигнал textEdited; при перемещении курсора генерируется сигнал cursorPositionChanged; при нажатии клавиши ВВОД генерируется сигнал returnPressed.
Когда завершается редактирование (из-за потери фокуса или нажатия клавиши ВВОД/Enter), генерируется сигнал editingFinished.
Обратите внимание, что если для поля ввода строки задан валидатор, сигналы returnPressed()/editingFinished() будут сгенерированы только в том случае, если валидатор вернёт QValidator::Acceptable.
По умолчанию QLineEdits имеют рамку, как указано в руководствах по стилям платформы; вы можете отключить её, вызвав setFrame(false).
Стандартные сочетания клавиш описаны ниже. Поле ввода также предоставляет контекстное меню (обычно вызываемое правой кнопкой мыши), которое предоставляет некоторые из этих вариантов редактирования.
END_OF_DOCUMENT_MARKER| Клавиша | Действие |
|---|---|
| Стрелка влево | Перемещает курсор на один символ влево. |
| Shift+Стрелка влево | Перемещает и выделяет текст на один символ влево. |
| Стрелка вправо | Перемещает курсор на один символ вправо. |
| Shift+Стрелка вправо | Перемещает и выделяет текст на один символ вправо. |
| Home | Перемещает курсор в начало строки. |
| End | Перемещает курсор в конец строки. |
| Backspace | Удаляет символ слева от курсора. |
| Ctrl+Backspace | Удаляет слово слева от курсора. |
| Delete | Удаляет символ справа от курсора. |
| Ctrl+Delete | Удаляет слово справа от курсора. |
| Ctrl+A | Выделить всё. |
| Ctrl+C | Копирует выделенный текст в буфер обмена. |
| Ctrl+Insert | Копирует выделенный текст в буфер обмена. |
| Ctrl+K | Удаляет до конца строки. |
| Ctrl+V | Вставляет текст из буфера обмена в строку редактирования. |
| Shift+Insert | Вставляет текст из буфера обмена в строку редактирования. |
| Ctrl+X | Удаляет выделенный текст и копирует его в буфер обмена. |
| Shift+Delete | Удаляет выделенный текст и копирует его в буфер обмена. |
| Ctrl+Z | Отменить последнее действие. |
| Ctrl+Y | Повторить последнее отменённое действие. |
Любая другая последовательность клавиш, представляющая допустимый символ, вставит этот символ в строку редактирования.
См. также QTextEdit, QLabel, QComboBox, Руководство по дизайну пользовательского интерфейса: Поля, Ввод и Пример редакторов строк.
Документация по типам элементов
перечисление QLineEdit::ActionPosition
Это перечисление описывает, как редактор строки должен отображать виджеты действий, которые должны быть добавлены.
| Постоянная | Значение | Описание |
|---|---|---|
QLineEdit::LeadingPosition |
0 |
Виджет отображается слева от текста при использовании направления выравнивания Qt::LeftToRight или справа при использовании Qt::RightToLeft, соответственно. |
QLineEdit::TrailingPosition |
1 |
Виджет отображается справа от текста при использовании направления выравнивания Qt::LeftToRight или слева при использовании Qt::RightToLeft, соответственно. |
Это перечисление было введено или изменено в Qt 5.2.
См. также addAction(), removeAction() и QWidget::layoutDirection.
перечисление QLineEdit::EchoMode
Это перечисление описывает, как редактор строки должен отображать содержимое.
| Постоянная | Значение | Описание |
|---|---|---|
QLineEdit::Normal |
0 |
Отображаются символы по мере их ввода. Это значение по умолчанию. |
QLineEdit::NoEcho |
1 |
Ничего не отображается. Это может быть уместно для паролей, где даже длина пароля должна быть скрыта. |
QLineEdit::Password |
2 |
Отображаются символы маски пароля, зависящие от платформы, вместо символов, фактически введённых. |
QLineEdit::PasswordEchoOnEdit |
3 |
Отображаются символы по мере их ввода при редактировании, в противном случае отображаются символы так же, как и при Password. |
См. также setEchoMode() и echoMode().
Документация по свойству
acceptableInput : const bool
Это свойство хранит информацию о том, удовлетворяет ли ввод inputMask и валидатору.
По умолчанию, это свойство равно true.
Функции доступа:
| bool | hasAcceptableInput() const |
См. также setInputMask() и setValidator().
alignment : Qt::Alignment
Это свойство хранит выравнивание поля ввода.
Здесь допускается как горизонтальное, так и вертикальное выравнивание; Qt::AlignJustify будет сопоставлен с Qt::AlignLeft.
По умолчанию это свойство содержит комбинацию Qt::AlignLeft и Qt::AlignVCenter.
Функции доступа:
| Qt::Alignment | alignment() const |
| void | setAlignment(Qt::Alignment flag) |
См. также Qt::Alignment.
clearButtonEnabled : bool
Это свойство определяет, отображает ли поле ввода кнопку очистки, когда оно не пусто.
Если включено, поле ввода отображает конечную кнопку очистки, когда оно содержит текст; в противном случае поле ввода не показывает кнопку очистки (по умолчанию).
Это свойство было добавлено в Qt 5.2.
Функции доступа:
| bool | isClearButtonEnabled() const |
| void | setClearButtonEnabled(bool enable) |
См. также addAction() и removeAction().
cursorMoveStyle : Qt::CursorMoveStyle
Это свойство хранит стиль перемещения курсора в этом поле ввода.
Когда это свойство установлено в Qt::VisualMoveStyle, поле ввода будет использовать визуальный стиль перемещения. Нажатие клавиши со стрелкой влево всегда будет приводить к перемещению курсора влево, независимо от направления письма текста. То же поведение относится к клавише со стрелкой вправо.
Когда свойство равно Qt::LogicalMoveStyle (по умолчанию), в блоке текста слева направо увеличение позиции курсора при нажатии клавиши со стрелкой влево, уменьшение позиции курсора при нажатии клавиши со стрелкой вправо. Если блок текста справа налево, применяется обратное поведение.
Это свойство было добавлено в Qt 4.8.
Функции доступа:
| Qt::CursorMoveStyle | cursorMoveStyle() const |
| void | setCursorMoveStyle(Qt::CursorMoveStyle style) |
cursorPosition : int
Это свойство хранит текущую позицию курсора для этого поля ввода.
Установка позиции курсора вызывает перерисовку, когда это необходимо.
По умолчанию это свойство содержит значение 0.
Функции доступа:
| int | cursorPosition() const |
| void | setCursorPosition(int) |
displayText : const QString
Это свойство хранит отображаемый текст.
Если echoMode имеет значение Normal, это возвращает то же самое, что и text(); если EchoMode имеет значение Password или PasswordEchoOnEdit, это возвращает строку символов маски пароля, зависящих от платформы, размером text().length(), например, "******"; если EchoMode имеет значение NoEcho, возвращается пустая строка "".
По умолчанию это свойство содержит пустую строку.
Функции доступа:
| QString | displayText() const |
См. также setEchoMode(), text() и EchoMode.
dragEnabled : bool
Это свойство определяет, начинает ли lineedit перетаскивание, если пользователь нажимает и перемещает мышь по выделенному тексту.
Перетаскивание отключено по умолчанию.
Функции доступа:
| bool | dragEnabled() const |
| void | setDragEnabled(bool b) |
echoMode : EchoMode
Это свойство хранит режим эха поля ввода.
Режим эха определяет, как текст, введенный в поле ввода, отображается (или отражается) пользователю.
Наиболее распространенной настройкой является Normal, в которой введенный пользователем текст отображается дословно, но QLineEdit также поддерживает режимы, которые позволяют подавлять или скрывать введенный текст: это включает NoEcho, Password и PasswordEchoOnEdit.
Отображение виджета и возможность копирования или перетаскивания текста зависят от этой настройки.
По умолчанию это свойство установлено в Normal.
Функции доступа:
| QLineEdit::EchoMode | echoMode() const |
| void | setEchoMode(QLineEdit::EchoMode) |
См. также EchoMode и displayText().
frame : bool
Это свойство определяет, рисует ли поле ввода себя с рамкой.
Если включено (по умолчанию), поле ввода рисует себя внутри рамки; в противном случае поле ввода рисует себя без рамки.
Функции доступа:
| bool | hasFrame() const |
| void | setFrame(bool) |
hasSelectedText : const bool
Это свойство определяет, выделен ли какой-либо текст.
hasSelectedText() возвращает true если часть или весь текст был выделен пользователем; в противном случае возвращает false.
По умолчанию это свойство равно false.
Функции доступа:
| bool | hasSelectedText() const |
См. также selectedText().
inputMask : QString
Это свойство хранит маску валидации ввода.
Если маска не установлена, inputMask() возвращает пустую строку.
Устанавливает маску валидации для QLineEdit. Вместо масок или вместе с ними можно использовать валидаторы; см. setValidator().
Сбросьте маску и вернитесь к нормальной работе QLineEdit, передав пустую строку ("").
В таблице ниже показаны символы, которые могут использоваться в маске ввода. Пробел, символ по умолчанию для пустого места, необходим для случаев, когда символ допускается, но не обязателен.
| Символ | Значение |
|---|---|
A |
Требуется буквенный символ ASCII. A-Z, a-z. |
a |
Разрешен буквенный символ ASCII, но не требуется. |
N |
Требуется буквенно-цифровой символ ASCII. A-Z, a-z, 0-9. |
n |
Разрешен буквенно-цифровой символ ASCII, но не требуется. |
X |
Требуется любой символ. |
x |
Разрешен любой символ, но не требуется. |
9 |
Требуется цифровой символ ASCII. 0-9. |
0 |
Разрешена цифра ASCII, но не требуется. |
D |
Требуется цифровой символ ASCII. 1-9. |
d |
Разрешена цифра ASCII, но не требуется (1-9). |
# |
Разрешены цифра ASCII или знаки плюс/минус, но не требуется. |
H |
Требуется шестнадцатеричный символ. A-F, a-f, 0-9. |
h |
Разрешен шестнадцатеричный символ, но не требуется. |
B |
Требуется двоичный символ. 0-1. |
b |
Разрешен двоичный символ, но не требуется. |
> |
Все последующие буквенные символы будут заглавными. |
< |
Все последующие буквенные символы будут строчными. |
! |
Отключить преобразование регистра. |
[ ] { } |
Зарезервировано. |
\ |
Используйте \ для экранирования специальных символов, перечисленных выше, чтобы использовать их в качестве разделителей. |
Маска состоит из строки символов маски и разделителей, необязательно после которых следует точка с запятой и символ, используемый для пробелов. Символы пробелов всегда удаляются из текста после редактирования.
Примеры:
| Маска | Примечания |
|---|---|
000.000.000.000;_ |
IP-адрес; пробелы — _. |
HH:HH:HH:HH:HH:HH;_ |
MAC-адрес |
0000-00-00 |
Дата ISO; пробелы — space
|
>AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;# |
Номер лицензии; пробелы — - и все буквенные символы преобразуются в верхний регистр. |
Для управления диапазонами (например, для IP-адреса) используйте маски вместе с валидаторами.
Функции доступа:
| QString | inputMask() const |
| void | setInputMask(const QString &inputMask) |
См. такжеmaxLength.
maxLength : int
Это свойство содержит максимальную разрешенную длину текста.
Если текст слишком длинный, он усекается до предела.
Если происходит усечение, любой выделенный текст будет снят, позиция курсора установлена в 0, и будет показана первая часть строки.
Если в строке редактирования есть маска ввода, маска определяет максимальную длину строки.
По умолчанию это свойство содержит значение 32767.
Функции доступа:
| int | maxLength() const |
| void | setMaxLength(int) |
См. такжеinputMask.
modified : bool
Это свойство указывает, был ли контент строки редактирования изменен пользователем.
Флаг modified никогда не читается объектом QLineEdit; он имеет значение false по умолчанию и изменяется на true всякий раз, когда пользователь изменяет содержимое строки редактирования.
Это полезно для тех случаев, когда необходимо предоставить значение по умолчанию, но неизвестно, каким оно должно быть (возможно, оно зависит от других полей в форме). Начните с пустой строки редактирования без лучшего значения по умолчанию, и когда значение по умолчанию станет известно, если modified() возвращает false (пользователь не вводил текст), вставьте значение по умолчанию.
Вызов setText() сбрасывает флаг modified на false.
Функции доступа:
| bool | isModified() const |
| void | setModified(bool) |
placeholderText : QString
Это свойство содержит текст-заполнитель строки редактирования.
Установка этого свойства отображает текст-заполнитель серого цвета в строке редактирования до тех пор, пока в строке редактирования нет текста.
Обычно пустая строка редактирования отображает текст-заполнитель, даже если она имеет фокус. Однако, если содержимое выровнено по горизонтали, текст-заполнитель не отображается под курсором, когда строка редактирования имеет фокус.
По умолчанию это свойство содержит пустую строку.
Это свойство было добавлено в Qt 4.7.
Функции доступа:
| QString | placeholderText() const |
| void | setPlaceholderText(const QString &) |
См. такжеtext().
readOnly : bool
Это свойство указывает, является ли строка редактирования только для чтения.
В режиме только для чтения пользователь по-прежнему может копировать текст в буфер обмена или перетаскивать текст (если echoMode() — Normal), но не может его редактировать.
Объект QLineEdit не отображает курсор в режиме только для чтения.
По умолчанию это свойство равно false.
Функции доступа:
| bool | isReadOnly() const |
| void | setReadOnly(bool) |
См. такжеsetEnabled().
redoAvailable : const bool
Это свойство указывает, доступно ли действие "Повторить".
Действие "Повторить" становится доступным после того, как пользователь выполнил одно или несколько действий "Отменить" для текста в строке редактирования.
По умолчанию это свойство равно false.
Функции доступа:
| bool | isRedoAvailable() const |
selectedText : const QString
Это свойство содержит выделенный текст.
Если выделенный текст отсутствует, значение этого свойства — пустая строка.
По умолчанию это свойство содержит пустую строку.
Функции доступа:
| QString | selectedText() const |
См. такжеhasSelectedText().
text : QString
Это свойство содержит текст строки редактирования.
Установка этого свойства очищает выделение, очищает историю "Отменить/Повторить", перемещает курсор в конец строки и сбрасывает свойство modified на false. Текст не проверяется при вставке с помощью setText().
Текст усекается до длины maxLength().
По умолчанию это свойство содержит пустую строку.
Функции доступа:
| QString | text() const |
| void | setText(const QString &) |
Сигнал уведомления:
| void | textChanged(const QString &text) |
undoAvailable : const bool
Это свойство указывает, доступно ли действие "Отменить".
Действие "Отменить" становится доступным после того, как пользователь изменил текст в строке редактирования.
По умолчанию это свойство равно false.
Функции доступа:
| bool | isUndoAvailable() const |
Документация по членам-функциям
QLineEdit::QLineEdit(const QString &contents, QWidget *parent = nullptr)
Создаёт поле ввода строки, содержащее текст contents.
Позиция курсора устанавливается в конец строки, а максимальная длина текста — в 32767 символов.
Аргумент parent передаётся конструктору QWidget.
См. также text() и setMaxLength().
QLineEdit::QLineEdit(QWidget *parent = nullptr)
Создаёт поле ввода строки без текста.
Максимальная длина текста устанавливается в 32767 символов.
Аргумент parent передаётся конструктору QWidget.
См. также setText() и setMaxLength().
[slot] void QLineEdit::clear()
Очищает содержимое поля ввода строки.
См. также setText() и insert().
[slot] void QLineEdit::copy() const
Копирует выделенный текст в буфер обмена, если он есть, и если echoMode() равен Normal.
[signal] void QLineEdit::cursorPositionChanged(int oldPos, int newPos)
Этот сигнал испускается всякий раз, когда курсор перемещается. Предыдущая позиция задаётся oldPos, а новая — newPos.
См. также setCursorPosition() и cursorPosition().
[slot] void QLineEdit::cut()
Копирует выделенный текст в буфер обмена и удаляет его, если он есть, и если echoMode() равен Normal.
Если текущий валидатор запрещает удаление выделенного текста, cut() скопирует текст без удаления.
См. также copy(), paste() и setValidator().
[signal] void QLineEdit::editingFinished()
Этот сигнал испускается, когда нажата клавиша Ввод или Enter, или поле ввода теряет фокус. Обратите внимание, что если для поля ввода установлен валидатор (validator()) или маска ввода (inputMask()), сигнал editingFinished() будет испущен только в том случае, если ввод соответствует маске (inputMask()) и валидатор (validator()) возвращает QValidator::Acceptable.
[signal] void QLineEdit::inputRejected()
Этот сигнал испускается, когда пользователь нажимает клавишу, которая не считается допустимым вводом. Например, если нажатие клавиши приводит к тому, что вызов validate() валидатора возвращает Invalid. Другой случай — когда пользователь пытается ввести больше символов, чем допускается максимальная длина поля ввода.
Примечание: Этот сигнал всё равно будет испущен в случае, когда часть текста принята, но не вся. Например, если установлена максимальная длина, а текст из буфера обмена длиннее максимальной длины при вставке.
Эта функция была добавлена в Qt 5.12.
[slot] void QLineEdit::paste()
Вставляет текст из буфера обмена в позицию курсора, удаляя любой выделенный текст, при условии, что поле ввода не является только для чтения (read-only).
Если результат ввода не будет соответствовать текущему валидатору (validator()), ничего не происходит.
[slot] void QLineEdit::redo()
Повторяет последнее действие, если оно доступно (available).
[signal] void QLineEdit::returnPressed()
Этот сигнал испускается при нажатии клавиши Ввод или Enter. Примечание: если для поля ввода установлен валидатор (validator()) или маска ввода (inputMask()), сигнал returnPressed() будет испущен только в том случае, если ввод соответствует маске (inputMask()) и валидатор (validator()) возвращает QValidator::Acceptable.
[slot] void QLineEdit::selectAll()
Выделяет весь текст (то есть выделяет его) и перемещает курсор в конец. Это полезно, когда вставлено значение по умолчанию, потому что если пользователь набирает текст, прежде чем нажать на виджет, выделенный текст будет удалён.
См. также setSelection() и deselect().
[signal] void QLineEdit::selectionChanged()
Этот сигнал испускается всякий раз, когда выделение изменяется.
См. также hasSelectedText() и selectedText().
[signal] void QLineEdit::textChanged(const QString &text)
Этот сигнал испускается всякий раз, когда текст изменяется. Аргумент text — новый текст.
В отличие от textEdited(), этот сигнал также испускается, когда текст изменяется программно, например, при вызове setText().
Примечание: Сигнал уведомления для свойства text.
[signal] void QLineEdit::textEdited(const QString &text)
Этот сигнал испускается всякий раз, когда текст редактируется. Аргумент text — новый текст.
В отличие от textChanged(), этот сигнал не испускается, когда текст изменяется программно, например, при вызове setText().
[slot] void QLineEdit::undo()
Отменяет последнее действие, если оно доступно (available). Снимает выделение и обновляет начальную позицию выделения до текущей позиции курсора.
[virtual] QLineEdit::~QLineEdit()
Уничтожает поле ввода строки.
void QLineEdit::addAction(QAction *action, QLineEdit::ActionPosition position)
Добавляет action в список действий в позиции position.
Эта функция была добавлена в Qt 5.2.
QAction *QLineEdit::addAction(const QIcon &icon, QLineEdit::ActionPosition position)
Это перегруженная функция.
Создаёт новое действие с заданным icon в позиции position.
Эта функция была добавлена в Qt 5.2.
void QLineEdit::backspace()
Если текст не выделен, удаляет символ слева от курсора и перемещает курсор на одну позицию влево. Если текст выделен, курсор перемещается к началу выделенного текста и выделенный текст удаляется.
См. также del().
[override virtual protected] void QLineEdit::changeEvent(QEvent *ev)
Переопределяет: QWidget::changeEvent(QEvent *event).
QCompleter *QLineEdit::completer() const
Возвращает текущий QCompleter, предоставляющий автодополнение.
Эта функция была добавлена в Qt 4.2.
См. также setCompleter().
[override virtual protected] void QLineEdit::contextMenuEvent(QContextMenuEvent *event)
Переопределяет: QWidget::contextMenuEvent(QContextMenuEvent *event).
Отображает стандартное контекстное меню, созданное с помощью createStandardContextMenu().
Если вы не хотите, чтобы у поля ввода было контекстное меню, вы можете установить его contextMenuPolicy в Qt::NoContextMenu. Если вы хотите настроить контекстное меню, переопределите эту функцию. Если вы хотите расширить стандартное контекстное меню, переопределите эту функцию, вызовите createStandardContextMenu() и расширьте возвращаемое меню.
void LineEdit::contextMenuEvent(QContextMenuEvent *event)
{
QMenu *menu = createStandardContextMenu();
menu->addAction(tr("My Menu Item"));
//...
menu->exec(event->globalPos());
delete menu;
} Параметр event используется для получения позиции указателя мыши при создании события.
См. также setContextMenuPolicy().
QMenu *QLineEdit::createStandardContextMenu()
Эта функция создаёт стандартное контекстное меню, которое отображается при щелчке правой кнопкой мыши по полю ввода. Она вызывается из обработчика по умолчанию contextMenuEvent(). Владение всплывающим меню передаётся вызывающему коду.
void QLineEdit::cursorBackward(bool mark, int steps = 1)
Перемещает курсор назад на steps символов. Если mark истинно, каждый пройденный символ добавляется к выделению; если mark ложно, выделение очищается.
См. также cursorForward().
void QLineEdit::cursorForward(bool mark, int steps = 1)
Перемещает курсор вперёд на steps символов. Если mark истинно, каждый пройденный символ добавляется к выделению; если mark ложно, выделение очищается.
См. также cursorBackward().
int QLineEdit::cursorPositionAt(const QPoint &pos)
Возвращает позицию курсора под точкой pos.
[protected] QRect QLineEdit::cursorRect() const
Возвращает прямоугольник, включающий курсор line edit.
Эта функция была добавлена в Qt 4.4.
void QLineEdit::cursorWordBackward(bool mark)
Перемещает курсор на одно слово назад. Если mark истинно, слово также выбирается.
См. также cursorWordForward().
void QLineEdit::cursorWordForward(bool mark)
Перемещает курсор на одно слово вперёд. Если mark истинно, слово также выбирается.
См. также cursorWordBackward().
void QLineEdit::del()
Если текст не выбран, удаляет символ справа от курсора. Если текст выбран, курсор перемещается в начало выбранного текста, и выбранный текст удаляется.
См. также backspace().
void QLineEdit::deselect()
Отменяет выделение выбранного текста.
См. также setSelection() и selectAll().
[override virtual protected] void QLineEdit::dragEnterEvent(QDragEnterEvent *e)
Переопределяет: QWidget::dragEnterEvent(QDragEnterEvent *event).
[override virtual protected] void QLineEdit::dragLeaveEvent(QDragLeaveEvent *e)
Переопределяет: QWidget::dragLeaveEvent(QDragLeaveEvent *event).
[override virtual protected] void QLineEdit::dragMoveEvent(QDragMoveEvent *e)
Переопределяет: QWidget::dragMoveEvent(QDragMoveEvent *event).
[override virtual protected] void QLineEdit::dropEvent(QDropEvent *e)
Переопределяет: QWidget::dropEvent(QDropEvent *event).
void QLineEdit::end(bool mark)
Перемещает курсор в конец строки, если он там ещё не находится. Если mark истинно, текст выделяется до последней позиции; в противном случае, любой выделенный текст снимается, если курсор перемещается.
См. также home().
[override virtual] bool QLineEdit::event(QEvent *e)
Переопределяет: QWidget::event(QEvent *event).
[override virtual protected] void QLineEdit::focusInEvent(QFocusEvent *e)
Переопределяет: QWidget::focusInEvent(QFocusEvent *event).
[override virtual protected] void QLineEdit::focusOutEvent(QFocusEvent *e)
Переопределяет: QWidget::focusOutEvent(QFocusEvent *event).
void QLineEdit::getTextMargins(int *left, int *top, int *right, int *bottom) const
Возвращает отступы текста виджета для left, top, right и bottom.
Эта функция была добавлена в Qt 4.5.
См. также setTextMargins().
void QLineEdit::home(bool mark)
Перемещает курсор в начало строки, если он там ещё не находится. Если mark истинно, текст выделяется до первой позиции; в противном случае, любой выделенный текст снимается, если курсор перемещается.
См. также end().
[protected] void QLineEdit::initStyleOption(QStyleOptionFrame *option) const
Инициализирует option значениями из этого QLineEdit. Этот метод полезен для подклассов, когда им нужен QStyleOptionFrame, но они не хотят заполнять всю информацию сами.
См. также QStyleOption::initFrom().
[override virtual protected] void QLineEdit::inputMethodEvent(QInputMethodEvent *e)
Переопределяет: QWidget::inputMethodEvent(QInputMethodEvent *event).
[override virtual] QVariant QLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const
Переопределяет: QWidget::inputMethodQuery(Qt::InputMethodQuery query) const.
void QLineEdit::insert(const QString &newText)
Удаляет любой выделенный текст, вставляет newText и проверяет результат. Если он допустим, устанавливает его в качестве нового содержимого line edit.
См. также setText() и clear().
[override virtual protected] void QLineEdit::keyPressEvent(QKeyEvent *event)
Переопределяет: QWidget::keyPressEvent(QKeyEvent *event).
Преобразует заданное нажатие клавиши event в действие line edit.
Если нажаты клавиши Return или Enter, и текущий текст допустим (или может быть сделан допустимым валидатором), генерируется сигнал returnPressed().
Стандартные сочетания клавиш перечислены в подробном описании класса.
[override virtual] QSize QLineEdit::minimumSizeHint() const
Переопределяет: QWidget::minimumSizeHint() const.
Возвращает минимальный размер для line edit.
Возвращаемая ширина достаточна для как минимум одного символа.
[override virtual protected] void QLineEdit::mouseDoubleClickEvent(QMouseEvent *e)
Переопределяет: QWidget::mouseDoubleClickEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mouseMoveEvent(QMouseEvent *e)
Переопределяет: QWidget::mouseMoveEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mousePressEvent(QMouseEvent *e)
Переопределяет: QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::mouseReleaseEvent(QMouseEvent *e)
Переопределяет: QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected] void QLineEdit::paintEvent(QPaintEvent *)
Переопределяет: QWidget::paintEvent(QPaintEvent *event).
int QLineEdit::selectionEnd() const
Возвращает индекс символа, непосредственно следующего за выделением в line edit, или -1, если текст не выделен.
Эта функция была добавлена в Qt 5.10.
См. также selectedText(), selectionStart() и selectionLength().
int QLineEdit::selectionLength() const
Возвращает длину выделения.
Эта функция была добавлена в Qt 5.10.
См. также selectedText(), selectionStart() и selectionEnd().
int QLineEdit::selectionStart() const
Возвращает индекс первой выделенной буквы в поле редактирования строки или -1, если текст не выделен.
См. также selectedText(), selectionEnd() и selectionLength().
void QLineEdit::setCompleter(QCompleter *c)
Устанавливает данному полю редактирования строки автозаполнение из дополнителя c. Режим автозаполнения устанавливается с помощью QCompleter::setCompletionMode().
Для использования QCompleter с QValidator или QLineEdit::inputMask, необходимо убедиться, что модель, предоставленная QCompleter, содержит корректные записи. Можно использовать QSortFilterProxyModel для обеспечения того, что модель QCompleter содержит только корректные записи.
Если c == 0, setCompleter() удаляет текущий дополнитель, фактически отключая автозаполнение.
Данная функция была добавлена в Qt 4.2.
См. также completer() и QCompleter.
void QLineEdit::setSelection(int start, int length)
Выделяет текст с позиции start и длиной length символов. Разрешаются отрицательные значения длины.
См. также deselect(), selectAll() и selectedText().
void QLineEdit::setTextMargins(int left, int top, int right, int bottom)
Устанавливает отступы вокруг текста внутри рамки размерами left, top, right и bottom.
См. также getTextMargins().
Данная функция была добавлена в Qt 4.5.
См. также textMargins().
void QLineEdit::setTextMargins(const QMargins &margins)
Устанавливает отступы вокруг текста внутри рамки.
См. также textMargins().
Данная функция была добавлена в Qt 4.6.
void QLineEdit::setValidator(const QValidator *v)
Устанавливает для данного поля редактирования строки возможность принимать только входные данные, которые будут приняты валидатором v. Это позволяет задавать любые произвольные ограничения на вводимый текст.
Если v == 0, setValidator() удаляет текущий валидатор входных данных. Начальное значение — отсутствие валидатора (т.е. принимаются любые входные данные до maxLength()).
См. также validator(), hasAcceptableInput(), QIntValidator, QDoubleValidator и QRegExpValidator.
[override virtual] QSize QLineEdit::sizeHint() const
Переопределяет: QWidget::sizeHint() const.
Возвращает рекомендуемый размер виджета.
Возвращаемая ширина в пикселях обычно достаточна для около 15–20 символов.
QMargins QLineEdit::textMargins() const
Возвращает отступы текста виджета.
Данная функция была добавлена в Qt 4.6.
См. также setTextMargins().
const QValidator *QLineEdit::validator() const
Возвращает указатель на текущий валидатор входных данных или nullptr если валидатор не задан.
См. также setValidator().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qlineedit.html