Класс QLineEdit
Виджет QLineEdit представляет собой однострочный текстовый редактор. Подробнее...
| Заголовок: | #include <QLineEdit> |
| qmake: | QT += widgets |
| Наследуется от: | QWidget |
Общедоступные типы
| Перечисление | ActionPosition { LeadingPosition, TrailingPosition } |
| Перечисление | EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit } |
Свойства
|
|
Общедоступные функции
| QLineEdit(QWidget *parent = Q_NULLPTR) | |
| QLineEdit(const QString &contents, QWidget *parent = Q_NULLPTR) | |
| ~QLineEdit() | |
| void | addAction(QAction *action, ActionPosition position) |
| QAction * | addAction(const QIcon &icon, 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 |
| 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 | 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(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 |
Реализованные публичные функции
| virtual bool | event(QEvent *e) |
| virtual QVariant | inputMethodQuery(Qt::InputMethodQuery property) const |
| virtual QSize | minimumSizeHint() const |
| virtual QSize | sizeHint() const |
- 211 общедоступные функции, унаследованные от QWidget
- 31 общедоступные функции, унаследованные от QObject
- 14 общедоступные функции, унаследованные от QPaintDevice
Публичные слоты
| void | очистить() |
| void | скопировать() const |
| void | вырезать() |
| void | вставить() |
| void | повторить() |
| void | выделить всё() |
| void | установитьТекст(const QString &) |
| void | отменить() |
Сигналы
| void | изменениеПозицииКурсора(int old, int new) |
| void | редактированиеЗакончено() |
| void | нажатиеВозврат() |
| void | изменениеВыделения() |
| void | изменениеТекста(const QString &text) |
| void | изменениеРедактированногоТекста(const QString &text) |
Защищенные функции
| QRect | прямоугольникКурсора() const |
| void | инициализироватьВариантСтили(QStyleOptionFrame *option) const |
Переопределённые защищённые функции
| virtual void | событиеИзменения(QEvent *ev) |
| virtual void | событиеКонтекстногоМеню(QContextMenuEvent *event) |
| virtual void | событиеВходаПеретаскивания(QDragEnterEvent *e) |
| virtual void | событиеВыходаПеретаскивания(QDragLeaveEvent *e) |
| virtual void | событиеПеремещенияПеретаскивания(QDragMoveEvent *e) |
| virtual void | событиеСбрасывания(QDropEvent *e) |
| virtual void | событиеФокусаВхода(QFocusEvent *e) |
| virtual void | событиеФокусаВыхода(QFocusEvent *e) |
| virtual void | событиеМетодаВвода(QInputMethodEvent *e) |
| virtual void | событиеНажатияКлавиши(QKeyEvent *event) |
| virtual void | событиеДвойногоНажатияМышью(QMouseEvent *e) |
| virtual void | событиеПеремещенияМышью(QMouseEvent *e) |
| virtual void | событиеНажатияМышью(QMouseEvent *e) |
| virtual void | событиеОтпусканияМышью(QMouseEvent *e) |
| virtual void | событиеОтрисовки(QPaintEvent *) |
- 35 защищённых функций, унаследованных от QWidget
- 9 защищённых функций, унаследованных от QObject
- 1 защищённая функция, унаследованная от QPaintDevice
Дополнительные унаследованные члены
- 5 статических общедоступных членов, унаследованных от QWidget
- 11 статических общедоступных членов, унаследованных от QObject
- 1 защищённый слот, унаследованный от QWidget
Подробное описание
Виджет QLineEdit — это однострочный текстовый редактор.
Поле ввода позволяет пользователю вводить и редактировать одну строку простого текста с полезным набором функций редактирования, включая отмену и повторение, вырезку и вставку, а также перетаскивание (см. setDragEnabled()).
Изменив echoMode() поля ввода, его также можно использовать в качестве поля «только для записи», например, для ввода паролей.
Длина текста может быть ограничена maxLength(). Текст может быть произвольно ограничен с помощью validator() или inputMask(), или обоих. При переключении между валидатором и маской ввода в одном и том же поле ввода лучше очистить валидатор или маску ввода, чтобы избежать неопределённого поведения.
Связанный класс — QTextEdit, который позволяет выполнять редактирование многострочного форматированного текста.
Вы можете изменить текст с помощью setText() или insert(). Текст извлекается с помощью text(); отображаемый текст (который может отличаться, см. EchoMode) извлекается с помощью displayText(). Текст можно выбрать с помощью setSelection() или selectAll(), а выделение можно вырезать, скопировать и вставить. Текст может быть выровнен с помощью setAlignment().
При изменении текста генерируется сигнал textChanged; при изменении текста, отличном от вызова setText(), генерируется сигнал textEdited; при перемещении курсора генерируется сигнал cursorPositionChanged; при нажатии клавиш Возврат или Enter генерируется сигнал returnPressed.
Когда редактирование завершается, либо потому, что поле ввода потеряло фокус, либо нажата клавиша Возврат/Enter, генерируется сигнал editingFinished().
Обратите внимание, что если на поле ввода установлен валидатор, сигналы returnPressed()/editingFinished() будут сгенерированы только в том случае, если валидатор возвращает QValidator::Acceptable.
По умолчанию 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 | Повторить последнюю отменённую операцию. |
Любая другая последовательность клавиш, представляющая допустимый символ, вставит этот символ в строку редактирования.
| Строка редактирования, отображаемая в стиле виджета Macintosh. | |
| Строка редактирования, отображаемая в стиле виджета Windows Vista. | |
| Строка редактирования, отображаемая в стиле виджета Fusion. |
См. также 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.
Функции доступа:
| EchoMode | echoMode() const |
| void | setEchoMode(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 = Q_NULLPTR)
Создаёт поле редактирования без текста.
Максимальная длина текста установлена в 32767 символов.
Аргумент parent передаётся конструктору QWidget.
См. также setText() и setMaxLength().
QLineEdit::QLineEdit(const QString &contents, QWidget *parent = Q_NULLPTR)
Создаёт поле ввода, содержащее текст contents.
Положение курсора устанавливается в конец строки, а максимальная длина текста — в 32767 символов.
Аргумент parent передаётся конструктору QWidget.
См. также text() и setMaxLength().
QLineEdit::~QLineEdit()
Удаляет поле ввода.
void QLineEdit::addAction(QAction *action, ActionPosition position)
Это перегруженный метод.
Добавляет action в список действий в позиции position.
Этот метод был введён в Qt 5.2.
QAction *QLineEdit::addAction(const QIcon &icon, ActionPosition position)
Это перегруженный метод.
Создаёт новое действие с заданной icon в позиции position.
Этот метод был введён в Qt 5.2.
void QLineEdit::backspace()
Если текст не выбран, удаляет символ слева от курсора текста и перемещает курсор на одну позицию влево. Если текст выбран, курсор перемещается в начало выделенного текста, и выделенный текст удаляется.
См. также del().
[virtual protected] void QLineEdit::changeEvent(QEvent *ev)
Переопределено из QWidget::changeEvent().
[slot] void QLineEdit::clear()
Очищает содержимое поля ввода.
См. также setText() и insert().
QCompleter *QLineEdit::completer() const
Возвращает текущий QCompleter, предоставляющий дополнения.
Этот метод был введён в Qt 4.2.
См. также setCompleter().
[virtual protected] void QLineEdit::contextMenuEvent(QContextMenuEvent *event)
Переопределено из QWidget::contextMenuEvent().
Отображает стандартное контекстное меню, созданное с помощью 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().
[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 old, int new)
Этот сигнал излучается всякий раз, когда курсор перемещается. Предыдущее положение задаётся параметром old, а новое — new.
См. также 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().
[virtual protected] void QLineEdit::dragEnterEvent(QDragEnterEvent *e)
Переопределено из QWidget::dragEnterEvent().
[virtual protected] void QLineEdit::dragLeaveEvent(QDragLeaveEvent *e)
Переопределено из QWidget::dragLeaveEvent().
[virtual protected] void QLineEdit::dragMoveEvent(QDragMoveEvent *e)
Переопределено из QWidget::dragMoveEvent().
[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().
[virtual] bool QLineEdit::event(QEvent *e)
Переопределено из QObject::event().
[virtual protected] void QLineEdit::focusInEvent(QFocusEvent *e)
Реализовано повторно из QWidget::focusInEvent().
[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().
[virtual protected] void QLineEdit::inputMethodEvent(QInputMethodEvent *e)
Реализовано повторно из QWidget::inputMethodEvent().
[virtual] QVariant QLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const
Реализовано повторно из QWidget::inputMethodQuery().
void QLineEdit::insert(const QString &newText)
Удаляет любой выделенный текст, вставляет newText и проверяет результат. Если он действителен, устанавливает его как новое содержимое поля редактирования.
См. также setText() и clear().
[virtual protected] void QLineEdit::keyPressEvent(QKeyEvent *event)
Реализовано повторно из QWidget::keyPressEvent().
Преобразует данное нажатие клавиши event в действие поля редактирования.
Если нажаты клавиши ВВОД или Enter, и текущий текст действителен (или может быть сделан действительным валидатором), сигнал returnPressed() генерируется.
Стандартные сочетания клавиш перечислены в подробном описании класса.
[virtual] QSize QLineEdit::minimumSizeHint() const
Реализовано повторно из QWidget::minimumSizeHint().
Возвращает минимальный размер для поля редактирования.
Возвращаемая ширина достаточна для хотя бы одного символа.
[virtual protected] void QLineEdit::mouseDoubleClickEvent(QMouseEvent *e)
Реализовано повторно из QWidget::mouseDoubleClickEvent().
[virtual protected] void QLineEdit::mouseMoveEvent(QMouseEvent *e)
Реализовано повторно из QWidget::mouseMoveEvent().
[virtual protected] void QLineEdit::mousePressEvent(QMouseEvent *e)
Реализовано повторно из QWidget::mousePressEvent().
[virtual protected] void QLineEdit::mouseReleaseEvent(QMouseEvent *e)
Реализовано повторно из QWidget::mouseReleaseEvent().
[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::selectionStart() const
selectionStart() возвращает индекс первого выделенного символа в поле редактирования или -1, если текст не выделен.
См. также selectedText().
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.
END_OF_DOCUMENT_MARKER
[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/archives/qt-5.6/qlineedit.html