Spec-Zone.ru › Qt 5.15

Класс QLineEdit

Виджет QLineEdit — это однострочный текстовый редактор. Подробнее...

Заголовок: #include <QLineEdit>
qmake: QT += widgets
Наследуется от: QWidget
  • Список всех членов, включая наследуемые
  • Устаревшие члены

Открытые типы

Перечисление ActionPosition { LeadingPosition, TrailingPosition }
Перечисление EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit }

Свойства

  • acceptableInput : const bool
  • alignment : Qt::Alignment
  • clearButtonEnabled : bool
  • cursorMoveStyle : Qt::CursorMoveStyle
  • cursorPosition : int
  • displayText : const QString
  • dragEnabled : bool
  • echoMode : EchoMode
  • frame : bool
  • hasSelectedText : const bool
  • inputMask : QString
  • maxLength : int
  • modified : bool
  • placeholderText : QString
  • readOnly : bool
  • redoAvailable : const bool
  • selectedText : const QString
  • text : QString
  • undoAvailable : const bool

Открытые функции

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 * создатьСтандартноеКонтекстноеМеню()
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)
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, Справочник по проектированию пользовательского интерфейса: Поле, Ввод, и Пример полей ввода.

Документация по типам членов

enum QLineEdit::ActionPosition

Этот перечислимый тип описывает, как поле ввода должно отображать виджеты действий, которые нужно добавить.

Постоянная Значение Описание
QLineEdit::LeadingPosition 0 Виджет отображается слева от текста при использовании направления макета Qt::LeftToRight или справа при использовании Qt::RightToLeft, соответственно.
QLineEdit::TrailingPosition 1 Виджет отображается справа от текста при использовании направления макета Qt::LeftToRight или слева при использовании Qt::RightToLeft, соответственно.

Этот перечислимый тип был введён или изменён в Qt 5.2.

См. также addAction(), removeAction(), и QWidget::layoutDirection.

enum 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, передав пустую строку ("").

Маска ввода — это строка шаблона ввода. Она может содержать следующие элементы:

Символы маски Определяет Category символов ввода, которые считаются допустимыми в этом положении
Метасимволы Различные специальные значения
Разделители Все остальные символы считаются неизменяемыми разделителями

В следующей таблице показаны символы маски и метасимволы, которые можно использовать в маске ввода.

Символ маски Значение
A необходимый символ категории "Буква", например A-Z, a-z.
a допускаемый, но не обязательный символ категории "Буква".
N необходимый символ категории "Буква" или "Цифра", например A-Z, a-z, 0-9.
n допускаемый, но не обязательный символ категории "Буква" или "Цифра".
X любой символ, отличный от пробела, необходимый.
x любой символ, отличный от пробела, допускаемый, но не обязательный.
9 необходимый символ категории "Цифра", например 0-9.
0 допускаемый, но не обязательный символ категории "Цифра".
D необходимый символ категории "Цифра", больше нуля, например 1-9.
d допускаемый, но не обязательный символ категории "Цифра", больше нуля, например 1-9.
# допускаемый, но не обязательный символ категории "Цифра" или знак плюс/минус.
H необходимый шестнадцатеричный символ. A-F, a-f, 0-9.
h допускаемый, но не обязательный шестнадцатеричный символ.
B необходимый двоичный символ. 0-1.
b допускаемый, но не обязательный двоичный символ.
Специальный символ Значение
> Все следующие буквенные символы будут в верхнем регистре.
< Все следующие буквенные символы будут в нижнем регистре.
! Отключение преобразования регистра.
;c Оканчивает маску ввода и устанавливает символ пробела в c.
[ ] { } Зарезервировано.
\ Используйте \ для экранирования специальных символов, перечисленных выше, для использования их в качестве разделителей.

При создании или очистке редактируемой строки она будет заполнена копией строки маски ввода, где удалены метасимволы, а символы маски заменены символом пробела (по умолчанию, space).

Когда маска ввода установлена, метод text() возвращает изменённую копию содержимого редактируемой строки, где все символы пробела удалены. Неизменённое содержимое можно прочитать с помощью displayText().

Метод hasAcceptableInput() возвращает false, если текущее содержимое редактируемой строки не соответствует требованиям маски ввода.

Примеры:

Маска Примечания
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, QChar::isLetter(), QChar::isNumber(), и QChar::digitValue().

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 &)

Сигнал Notifier:

void textChanged(const QString &text)

См. также insert() и clear().

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.

См. также cut() и paste().

[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() будет испущен только в том случае, если ввод соответствует маске ввода и валидатор возвращает QValidator::Acceptable.

[signal] void QLineEdit::inputRejected()

Этот сигнал испускается, когда пользователь нажимает клавишу, которая не считается допустимым вводом. Например, если нажатие клавиши приводит к тому, что вызов validate() валидатора возвращает Invalid. Другой случай — когда пользователь пытается ввести больше символов, чем максимальная длина поля редактирования.

Примечание: этот сигнал всё равно будет испущен в случае, если часть текста принята, но не вся. Например, если установлена максимальная длина, и текст из буфера обмена длиннее максимальной длины при вставке.

Эта функция была введена в Qt 5.12.

[slot] void QLineEdit::paste()

Вставляет текст из буфера обмена в позицию курсора, удаляя любой выделенный текст, при условии, что поле редактирования не только для чтения (read-only).

Если результат ввода не будет допустим по текущему валидатору (validator()), ничего не произойдёт.

См. также copy() и cut().

[slot] void QLineEdit::redo()

Повторяет последнюю операцию, если повторение доступно (available).

[signal] void QLineEdit::returnPressed()

Этот сигнал испускается при нажатии клавиши Ввод или Enter. Обратите внимание, что если установлен валидатор (validator()) или маска ввода (inputMask()), сигнал returnPressed() будет испущен только в том случае, если ввод соответствует маске ввода и валидатор возвращает QValidator::Acceptable.

[slot] void QLineEdit::selectAll()

Выделяет весь текст (то есть выделяет его) и перемещает курсор в конец. Это полезно, когда вставлен значение по умолчанию, потому что, если пользователь набирает что-то, прежде чем нажать на виджет, выделенный текст будет удален.

См. также setSelection() и deselect().

[signal] void QLineEdit::selectionChanged()

Этот сигнал испускается всякий раз, когда изменяется выделение.

См. также hasSelectedText() и selectedText().

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

Этот сигнал испускается всякий раз, когда текст изменяется. Аргумент text — новый текст.

В отличие от textEdited(), этот сигнал также испускается при программном изменении текста, например, при вызове setText().

Примечание: Сигнал Notifier для свойства 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 равно 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.

[protected] QRect QLineEdit::cursorRect() const

Возвращает прямоугольник, содержащий курсор редактирования строки.

Эта функция была добавлена в Qt 4.4.

void QLineEdit::cursorWordBackward(bool mark)

Перемещает курсор на одно слово назад. Если mark равно true, слово также выделяется.

См. также cursorWordForward().

void QLineEdit::cursorWordForward(bool mark)

Перемещает курсор на одно слово вперёд. Если mark равно true, слово также выделяется.

См. также 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 равно true, текст выделяется до последней позиции; иначе, если курсор перемещён, выделение снимается.

См. также 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::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(QInputMethodEvent *event).

[override virtual] QVariant QLineEdit::inputMethodQuery(Qt::InputMethodQuery property) const

Переопределяет: QWidget::inputMethodQuery(Qt::InputMethodQuery query) const.

void QLineEdit::insert(const QString &newText)

Удаляет выделенный текст, вставляет newText и проверяет результат. Если результат корректный, он устанавливается в качестве нового содержимого поля редактирования строки.

См. также setText() и clear().

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

Переопределяет: QWidget::keyPressEvent(QKeyEvent *event).

Преобразует нажатие клавиши event в действие для поля редактирования строки.

Если нажаты клавиши Возврат или Enter, и текущий текст корректный (или может быть сделан корректным валидатором), генерируется сигнал returnPressed().

Стандартные сочетания клавиш перечислены в подробном описании класса.

[override virtual] QSize QLineEdit::minimumSizeHint() const

Переопределяет функцию доступа для свойства: QWidget::minimumSizeHint.

Возвращает минимальный размер для поля редактирования строки.

Возвращаемая ширина обычно достаточно для хотя бы одного символа.

[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

Возвращает индекс символа непосредственно после выделенного в поле редактирования строки или -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 символов. Допускаются отрицательные значения length.

См. также deselect(), selectAll() и selectedText().

void QLineEdit::setTextMargins(int left, int top, int right, int bottom)

Устанавливает отступы вокруг текста внутри рамки с размерами left, top, right и bottom.

См. также textMargins().

Данная функция была добавлена в Qt 4.5.

См. также textMargins().

void QLineEdit::setTextMargins(const QMargins &margins)

Устанавливает отступы margins вокруг текста внутри рамки.

См. также textMargins().

Данная функция была добавлена в Qt 4.6.

void QLineEdit::setValidator(const QValidator *v)

Устанавливает валидатор для значений строки редактирования в v.

Сигналы returnPressed() и editingFinished() редактора строки будут выпущены только в том случае, если v валидирует содержимое строки редактирования как Acceptable. Пользователь может изменить содержимое на любое значение Intermediate во время редактирования, но не сможет изменить текст на значение, которое v валидирует как Invalid.

Это позволяет ограничить текст, который в итоге будет введён, когда редактирование завершено, оставляя пользователям достаточную свободу редактировать текст из одного допустимого состояния в другое.

Если v == 0, setValidator() удаляет текущий валидатор ввода. Начальное значение - отсутствие валидатора ввода (то есть любой ввод принимается до maxLength()).

См. также validator(), hasAcceptableInput(), QIntValidator, QDoubleValidator и QRegExpValidator.

QSize QLineEdit::sizeHint() const

Переопределяет функцию доступа к свойству: QWidget::sizeHint.

Возвращает рекомендуемый размер виджета.

Возвращаемая ширина в пикселях обычно достаточна для примерно 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.15/qlineedit.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API