Spec-Zone.ru › Qt 5.14

Класс 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

Это свойство содержит выравнивание элемента line edit.

Здесь допускается как горизонтальное, так и вертикальное выравнивание; Qt::AlignJustify будет сопоставлен с Qt::AlignLeft.

По умолчанию это свойство содержит комбинацию Qt::AlignLeft и Qt::AlignVCenter.

Функции доступа:

Qt::Alignment alignment() const
void setAlignment(Qt::Alignment flag)

См. также Qt::Alignment.

clearButtonEnabled : bool

Это свойство определяет, отображает ли элемент line edit кнопку очистки, когда он не пуст.

Если включено, элемент line edit отображает конечную кнопку очистки, когда он содержит текст; в противном случае элемент line edit не показывает кнопку очистки (по умолчанию).

Это свойство было введено в Qt 5.2.

Функции доступа:

bool isClearButtonEnabled() const
void setClearButtonEnabled(bool enable)

См. также addAction() и removeAction().

cursorMoveStyle : Qt::CursorMoveStyle

Это свойство содержит стиль перемещения курсора в этом элементе line edit.

Когда это свойство установлено в Qt::VisualMoveStyle, элемент line edit будет использовать стиль визуального перемещения. Нажатие клавиши со стрелкой влево всегда будет приводить к перемещению курсора влево, независимо от направления написания текста. То же поведение относится к клавише со стрелкой вправо.

Когда свойство равно Qt::LogicalMoveStyle (по умолчанию), в блоке текста слева направо увеличение позиции курсора при нажатии клавиши со стрелкой влево, уменьшение позиции курсора при нажатии клавиши со стрелкой вправо. Если блок текста справа налево, применяется противоположное поведение.

Это свойство было введено в Qt 4.8.

Функции доступа:

Qt::CursorMoveStyle cursorMoveStyle() const
void setCursorMoveStyle(Qt::CursorMoveStyle style)

cursorPosition : int

Это свойство содержит текущую позицию курсора для этого элемента line edit.

Установка позиции курсора вызывает перерисовку, когда это необходимо.

По умолчанию это свойство содержит значение 0.

Функции доступа:

int cursorPosition() const
void setCursorPosition(int)

displayText : const QString

Это свойство содержит отображаемый текст.

Если echoMode равно Normal, это возвращает то же самое, что и text(); если EchoMode равно Password или PasswordEchoOnEdit, оно возвращает строку символов маски пароля, зависящих от платформы, размером text().length(), например, "******"; если EchoMode равно NoEcho, возвращает пустую строку, "".

По умолчанию это свойство содержит пустую строку.

Функции доступа:

QString displayText() const

См. также setEchoMode(), text() и EchoMode.

dragEnabled : bool

Это свойство определяет, запускает ли lineedit перетаскивание, если пользователь нажимает и перемещает мышь по некоторому выделенному тексту.

Перетаскивание отключено по умолчанию.

Функции доступа:

bool dragEnabled() const
void setDragEnabled(bool b)

echoMode : EchoMode

Это свойство содержит режим отображения элемента line edit.

Режим отображения определяет, как текст, введенный в элементе line edit, отображается (или отображается эхом) пользователю.

Наиболее распространенной настройкой является Normal, в которой введенный пользователем текст отображается дословно, но QLineEdit также поддерживает режимы, которые позволяют подавлять или скрывать введенный текст: они включают NoEcho, Password и PasswordEchoOnEdit.

Отображение виджета и возможность копировать или перетаскивать текст зависят от этой настройки.

По умолчанию это свойство установлено в Normal.

Функции доступа:

QLineEdit::EchoMode echoMode() const
void setEchoMode(QLineEdit::EchoMode)

См. также EchoMode и displayText().

frame : bool

Это свойство определяет, рисует ли элемент line edit себя с рамкой.

Если включено (по умолчанию), элемент line edit рисует себя внутри рамки; в противном случае элемент line edit рисует себя без рамки.

Функции доступа:

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

Сигнал нотификации:

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

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

[signal] void QLineEdit::inputRejected()

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

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

Функция была добавлена в Qt 5.12.

[slot] void QLineEdit::paste()

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

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

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

[slot] void QLineEdit::redo()

Повторяет последнее действие, если повторение доступно.

[signal] void QLineEdit::returnPressed()

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

[slot] void QLineEdit::selectAll()

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

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

[signal] void QLineEdit::selectionChanged()

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

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

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

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

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

Примечание: Сигнал уведомления для свойства text.

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

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

В отличие от textChanged(), этот сигнал не испускается, когда текст изменяется программно, например, с помощью вызова setText().

[slot] void QLineEdit::undo()

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

[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. Это позволяет ограничить вводимый текст.

Если 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.14/qlineedit.html

Spec-Zone.ru

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