Класс QLineEdit
Виджет QLineEdit — это однострочный редактор текста. Подробнее...
| Заголовок: | #include <QLineEdit> |
| qmake: | QT += widgets |
| Наследует: | QWidget |
Открытые типы
| перечисление | ActionPosition { LeadingPosition, TrailingPosition } |
| перечисление | EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit } |
Свойства
|
|
Открытые функции
| 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) |
| 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 |
- 214 общедоступных функций, унаследованных от QWidget
- 31 общедоступных функций, унаследованных от QObject
- 14 общедоступных функций, унаследованных от QPaintDevice
Общедоступные слоты
| void | clear() |
| void | copy() const |
| void | cut() |
| void | paste() |
| void | redo() |
| void | selectAll() |
| void | setText(const QString &) |
| void | undo() |
Сигналы
| void | cursorPositionChanged(int oldPos, int newPos) |
| void | editingFinished() |
| void | inputRejected() |
| void | returnPressed() |
| void | selectionChanged() |
| void | textChanged(const QString &text) |
| void | textEdited(const QString &text) |
Статические общедоступные члены
| const QMetaObject | staticMetaObject |
- 5 статических общедоступных членов, унаследованных от QWidget
- 9 статических общедоступных членов, унаследованных от QObject
Защищенные функции
| QRect | cursorRect() const |
| void | initStyleOption(QStyleOptionFrame *option) const |
Переопределённые защищенные функции
| виртуальный 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 |
- 35 защищенных функций, унаследованных от QWidget
- 9 защищенных функций, унаследованных от QObject
- 1 защищенная функция, унаследованная от QPaintDevice
Дополнительные унаследованные члены
- 1 защищенный слот, унаследованный от QWidget
Подробное описание
Виджет QLineEdit — это однострочный редактор текста.
Поле ввода позволяет пользователю вводить и редактировать одну строку простого текста с полезным набором функций редактирования, включая отмену и повтор, вырезку и вставку, а также перетаскивание (см. setDragEnabled()).
Изменяя echoMode() поля ввода, его также можно использовать в качестве поля «только для записи», например, для ввода паролей.
Длина текста может быть ограничена с помощью maxLength(). Текст можно произвольно ограничить с помощью validator() или inputMask(), или обоих одновременно. При переключении между валидатором и маской ввода в одном поле ввода лучше всего очистить валидатор или маску ввода, чтобы избежать неопределённого поведения.
Связанный класс — QTextEdit, который позволяет редактировать текст в несколько строк с форматированием.
Вы можете изменить текст с помощью setText() или insert(). Текст извлекается с помощью text(); отображаемый текст (который может отличаться, см. EchoMode) извлекается с помощью displayText(). Текст можно выбрать с помощью setSelection() или selectAll(), а выделенный текст можно вырезать, скопировать и вставить. Выравнивание текста можно изменить с помощью setAlignment().
При изменении текста генерируется сигнал textChanged(); при изменении текста, кроме как с помощью вызова setText(), генерируется сигнал textEdited(); при перемещении курсора генерируется сигнал cursorPositionChanged(); и при нажатии клавиши Return или Enter генерируется сигнал returnPressed().
При завершении редактирования, либо из-за потери фокуса полем ввода, либо при нажатии Return/Enter, генерируется сигнал editingFinished().
Обратите внимание, что если для поля ввода установлен валидатор, сигналы returnPressed()/editingFinished() будут генерироваться только в том случае, если валидатор вернёт QValidator::Acceptable.
END_OF_DOCUMENT_MARKERПо умолчанию, QLineEdits имеют рамку, как указано руководствами по стилю платформы; вы можете отключить её, вызвав setFrame(false).
Ниже описаны стандартные сочетания клавиш. Линейный редактор также предоставляет контекстное меню (обычно вызываемое правой кнопкой мыши), которое отображает некоторые из этих опций редактирования.
| Нажатие клавиши | Действие |
|---|---|
| Клавиша влево | Перемещает курсор на один символ влево. |
| 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
Это свойство определяет, начинает ли поле ввода перетаскивание, если пользователь нажимает и перемещает мышь по выделенному тексту.
Перетаскивание по умолчанию отключено.
Функции доступа:
| 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(QWidget *parent = nullptr)
Создаёт редактор строки без текста.
Максимальная длина текста установлена в 32767 символов.
Аргумент parent передаётся в конструктор QWidget.
См. также setText() и setMaxLength().
QLineEdit::QLineEdit(const QString &contents, QWidget *parent = nullptr)
Создаёт редактор строки, содержащий текст contents.
Положение курсора установлено в конец строки, а максимальная длина текста — в 32767 символов.
Аргументы parent передаются конструктору QWidget.
См. также text() и setMaxLength().
[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().
[slot] void QLineEdit::clear()
Очищает содержимое редактора строки.
См. также setText() и insert().
QCompleter *QLineEdit::completer() const
Возвращает текущий QCompleter, предоставляющий дополнения.
Эта функция была добавлена в Qt 4.2.
См. также setCompleter().
[override virtual protected] void QLineEdit::contextMenuEvent(QContextMenuEvent *event)
Переопределено из QWidget::contextMenuEvent().
Отображает стандартное контекстное меню, созданное с помощью createStandardContextMenu().
Если вы не хотите, чтобы у редактора строки было контекстное меню, вы можете установить его свойство contextMenuPolicy в Qt::NoContextMenu. Если вы хотите настроить контекстное меню, переопределите эту функцию. Если вы хотите расширить стандартное контекстное меню, переопределите эту функцию, вызовите createStandardContextMenu() и расширьте возвращённое меню.
Параметр event используется для получения позиции указателя мыши в момент создания события.
См. также setContextMenuPolicy().
[slot] void QLineEdit::copy() const
Копирует выделенный текст в буфер обмена, если он есть, и если echoMode() равно Normal.
QMenu *QLineEdit::createStandardContextMenu()
Эта функция создаёт стандартное контекстное меню, которое отображается, когда пользователь щелкает правой кнопкой мыши по редактору строки. Она вызывается обработчиком contextMenuEvent() по умолчанию. Владение всплывающим меню передаётся вызывающему коду.
void QLineEdit::cursorBackward(bool mark, int steps = 1)
Перемещает курсор назад на steps символов. Если mark равно true, каждый пройденный символ добавляется к выделению; если mark равно false, выделение очищается.
См. также cursorForward().
void QLineEdit::cursorForward(bool mark, int steps = 1)
Перемещает курсор вперёд на steps символов. Если mark равно true, каждый пройденный символ добавляется к выделению; если mark равно false, выделение очищается.
См. также cursorBackward().
int QLineEdit::cursorPositionAt(const QPoint &pos)
Возвращает позицию курсора под точкой pos.
[signal] void QLineEdit::cursorPositionChanged(int oldPos, int newPos)
Этот сигнал излучается всякий раз, когда курсор перемещается. Предыдущая позиция задаётся параметром oldPos, а новая — параметром newPos.
См. также setCursorPosition() и cursorPosition().
[protected] QRect QLineEdit::cursorRect() const
Возвращает прямоугольник, содержащий курсор редактора строки.
Эта функция была добавлена в Qt 4.4.
void QLineEdit::cursorWordBackward(bool mark)
Перемещает курсор на одно слово назад. Если mark равно true, слово также выделяется.
См. также cursorWordForward().
void QLineEdit::cursorWordForward(bool mark)
Перемещает курсор на одно слово вперёд. Если mark равно true, слово также выделяется.
См. также cursorWordBackward().
[slot] void QLineEdit::cut()
Копирует выделенный текст в буфер обмена и удаляет его, если он есть, и если echoMode() равно Normal.
Если текущий валидатор запрещает удаление выделенного текста, cut() скопирует текст без удаления.
См. также copy(), paste() и setValidator().
void QLineEdit::del()
Если текст не выделен, удаляет символ справа от курсора. Если текст выделен, курсор перемещается к началу выделенного текста, а выделенный текст удаляется.
См. также backspace().
void QLineEdit::deselect()
Отменяет выделение текста.
См. также setSelection() и selectAll().
[override virtual protected] void QLineEdit::dragEnterEvent(QDragEnterEvent *e)
Переопределено из QWidget::dragEnterEvent().
[override virtual protected] void QLineEdit::dragLeaveEvent(QDragLeaveEvent *e)
Переопределено из QWidget::dragLeaveEvent().
[override virtual protected] void QLineEdit::dragMoveEvent(QDragMoveEvent *e)
Переопределено из QWidget::dragMoveEvent().
[override virtual protected] void QLineEdit::dropEvent(QDropEvent *e)
Переопределено из QWidget::dropEvent().
[signal] void QLineEdit::editingFinished()
Этот сигнал излучается, когда нажата клавиша Ввод или редактор строки теряет фокус. Обратите внимание, что если задан validator() или inputMask() редактора строки и нажата клавиша Ввод, сигнал editingFinished() будет излучен только в том случае, если ввод соответствует inputMask() и validator() возвращает QValidator::Acceptable.
void QLineEdit::end(bool mark)
Перемещает текстовый курсор в конец строки, если он там ещё не находится. Если mark равно true, текст выделяется до последней позиции; в противном случае, любой выделенный текст снимается, если курсор перемещён.
См. также home().
[override virtual] bool QLineEdit::event(QEvent *e)
Переопределено из QWidget::event().
[override virtual protected] void QLineEdit::focusInEvent(QFocusEvent *e)
Переопределено из QWidget::focusInEvent().
[override virtual protected] void QLineEdit::focusOutEvent(QFocusEvent *e)
Переопределено из QWidget::focusOutEvent().
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 равно true, текст выбирается до первой позиции; в противном случае, любой выделенный текст снимается, если курсор перемещается.
См. также end().
[protected] void QLineEdit::initStyleOption(QStyleOptionFrame *option) const
Инициализирует option значениями из этого QLineEdit. Этот метод полезен для подклассов, когда им нужен QStyleOptionFrame, но они не хотят сами заполнять всю информацию.
См. также QStyleOption::initFrom().
[override virtual protected] void QLineEdit::inputMethodEvent(QInputMethodEvent *e)
Переопределено из QWidget::inputMethodEvent().
[override virtual] QVariant QLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const
Переопределено из QWidget::inputMethodQuery().
[signal] void QLineEdit::inputRejected()
Этот сигнал испускается, когда пользователь нажимает клавишу, которая не считается приемлемым вводом. Например, если нажатие клавиши приводит к тому, что вызов validate() валидатора возвращает Invalid. Другой случай — попытка ввода большего количества символов, чем максимальная длина поля редактирования.
Примечание: этот сигнал всё равно будет испускаться в случае, если часть текста принята, но не вся. Например, если установлена максимальная длина, а текст из буфера обмена длиннее максимальной длины при вставке.
Эта функция была добавлена в Qt 5.12.
void QLineEdit::insert(const QString &newText)
Удаляет любой выделенный текст, вставляет newText и валидирует результат. Если он корректен, устанавливает его в качестве нового содержимого поля редактирования.
См. также setText() и clear().
[override virtual protected] void QLineEdit::keyPressEvent(QKeyEvent *event)
Переопределено из QWidget::keyPressEvent().
Преобразует заданное нажатие клавиши event в действие поля редактирования.
Если нажата клавиша Ввод или Enter, и текущий текст корректен (или может быть сделан корректным валидатором), испускается сигнал returnPressed().
Стандартные сочетания клавиш перечислены в подробном описании класса.
[override virtual] QSize QLineEdit::minimumSizeHint() const
Переопределено из QWidget::minimumSizeHint().
Возвращает минимальный размер для поля редактирования.
Возвращаемая ширина достаточна для как минимум одного символа.
[override virtual protected] void QLineEdit::mouseDoubleClickEvent(QMouseEvent *e)
Переопределено из QWidget::mouseDoubleClickEvent().
[override virtual protected] void QLineEdit::mouseMoveEvent(QMouseEvent *e)
Переопределено из QWidget::mouseMoveEvent().
[override virtual protected] void QLineEdit::mousePressEvent(QMouseEvent *e)
Переопределено из QWidget::mousePressEvent().
[override virtual protected] void QLineEdit::mouseReleaseEvent(QMouseEvent *e)
Переопределено из QWidget::mouseReleaseEvent().
[override virtual protected] void QLineEdit::paintEvent(QPaintEvent *)
Переопределено из QWidget::paintEvent().
[slot] void QLineEdit::paste()
Вставляет текст из буфера обмена в позицию курсора, удаляя любой выделенный текст, при условии, что поле редактирования не является только для чтения.
Если результат не будет приемлем для текущего валидатора, ничего не происходит.
[slot] void QLineEdit::redo()
Повторяет последнее действие, если оно доступно для повтора.
[signal] void QLineEdit::returnPressed()
Этот сигнал испускается при нажатии клавиши Ввод или Enter. Обратите внимание, что если для поля редактирования установлен валидатор() или inputMask(), сигнал returnPressed() будет испущен только если ввод соответствует inputMask() и валидатор() возвращает QValidator::Acceptable.
[slot] void QLineEdit::selectAll()
Выделяет весь текст (то есть выделяет его) и перемещает курсор в конец. Это полезно, когда был вставлен значение по умолчанию, потому что если пользователь набирает что-то до того, как нажать на виджет, выделенный текст будет удалён.
См. также setSelection() и deselect().
[signal] void QLineEdit::selectionChanged()
Этот сигнал испускается всякий раз, когда изменяется выделение.
См. также hasSelectedText() и selectedText().
int QLineEdit::selectionEnd() const
Возвращает индекс символа непосредственно после выделенного в поле редактирования или -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)
Устанавливает отступы 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().
Возвращает рекомендуемый размер виджета.
Возвращаемая ширина в пикселях обычно достаточна для примерно 15-20 символов.
[signal] void QLineEdit::textChanged(const QString &text)
Этот сигнал испускается всякий раз, когда текст изменяется. Аргумент text — это новый текст.
В отличие от textEdited(), этот сигнал также испускается, когда текст изменяется программно, например, при вызове setText().
Примечание: Сигнал-уведомитель для свойства text.
[signal] void QLineEdit::textEdited(const QString &text)
Этот сигнал испускается всякий раз, когда текст редактируется. Аргумент text — это новый текст.
В отличие от textChanged(), этот сигнал не испускается, когда текст изменяется программно, например, при вызове setText().
QMargins QLineEdit::textMargins() const
Возвращает отступы текста виджета.
Эта функция была добавлена в Qt 4.6.
См. также setTextMargins().
[slot] void QLineEdit::undo()
Отменяет последнюю операцию, если отмена доступна. Снимает выделение любого текущего выделенного фрагмента и обновляет начало выделения до текущей позиции курсора.
const QValidator *QLineEdit::validator() const
Возвращает указатель на текущий валидатор ввода или 0, если валидатор не задан.
См. также setValidator().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qlineedit.html