QLineEdit Class
QLineEdit ウィジェットは一行テキストエディターです。詳細...
Header: | #include <QLineEdit> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
Inherits: | QWidget |
パブリックタイプ
enum | ActionPosition { LeadingPosition, TrailingPosition } |
enum | EchoMode { Normal, NoEcho, Password, PasswordEchoOnEdit } |
プロパティ
|
|
パブリック関数
QLineEdit(QWidget *parent = nullptr) | |
QLineEdit(const QString &contents, QWidget *parent = nullptr) | |
virtual | ~QLineEdit() |
void | addAction(QAction *action, QLineEdit::ActionPosition position) |
QAction * | addAction(const QIcon &icon, QLineEdit::ActionPosition position) |
Qt::Alignment | alignment() const |
void | backspace() |
QCompleter * | completer() const |
QMenu * | createStandardContextMenu() |
void | cursorBackward(bool mark, int steps = 1) |
void | cursorForward(bool mark, int steps = 1) |
Qt::CursorMoveStyle | cursorMoveStyle() const |
int | cursorPosition() const |
int | cursorPositionAt(const QPoint &pos) |
void | cursorWordBackward(bool mark) |
void | cursorWordForward(bool mark) |
void | del() |
void | deselect() |
QString | displayText() const |
bool | dragEnabled() const |
QLineEdit::EchoMode | echoMode() const |
void | end(bool mark) |
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(const QMargins &margins) |
void | setTextMargins(int left, int top, int right, int bottom) |
void | setValidator(const QValidator *v) |
QString | text() const |
QMargins | textMargins() const |
const QValidator * | validator() const |
再実装パブリック関数
virtual bool | event(QEvent *e) override |
virtual QVariant | inputMethodQuery(Qt::InputMethodQuery property) const override |
virtual QSize | minimumSizeHint() const override |
virtual QSize | sizeHint() const override |
virtual void | timerEvent(QTimerEvent *e) override |
パブリック・スロット
void | clear() |
void | copy() const |
void | cut() |
void | paste() |
void | redo() |
void | selectAll() |
void | setText(const QString &) |
void | undo() |
シグナル
void | cursorPositionChanged(int oldPos, int newPos) |
void | editingFinished() |
void | inputRejected() |
void | returnPressed() |
void | selectionChanged() |
void | textChanged(const QString &text) |
void | textEdited(const QString &text) |
保護された機能
QRect | cursorRect() const |
virtual void | initStyleOption(QStyleOptionFrame *option) const |
再実装されたプロテクト関数
virtual void | changeEvent(QEvent *ev) override |
virtual void | contextMenuEvent(QContextMenuEvent *event) override |
virtual void | dragEnterEvent(QDragEnterEvent *e) override |
virtual void | dragLeaveEvent(QDragLeaveEvent *e) override |
virtual void | dragMoveEvent(QDragMoveEvent *e) override |
virtual void | dropEvent(QDropEvent *e) override |
virtual void | focusInEvent(QFocusEvent *e) override |
virtual void | focusOutEvent(QFocusEvent *e) override |
virtual void | inputMethodEvent(QInputMethodEvent *e) override |
virtual void | keyPressEvent(QKeyEvent *event) override |
virtual void | keyReleaseEvent(QKeyEvent *e) override |
virtual void | mouseDoubleClickEvent(QMouseEvent *e) override |
virtual void | mouseMoveEvent(QMouseEvent *e) override |
virtual void | mousePressEvent(QMouseEvent *e) override |
virtual void | mouseReleaseEvent(QMouseEvent *e) override |
virtual void | paintEvent(QPaintEvent *) override |
詳細説明
ラインエディットでは、アンドゥやリドゥ、カット&ペースト、ドラッグ&ドロップなどの便利な編集機能を使って、1行のプレーンテキストを入力・編集することができます。
ラインエディットのechoMode()を変更することで、パスワードなどの入力のための書き込み専用フィールドとして使用することもできます。
QTextEdit は、複数行のリッチテキスト編集を可能にする関連クラスです。
テキストの制約
テキストの最大許容長を定義するにはmaxLength を使用します。inputMask とsetValidator() を使って、テキストの内容をさらに制約することができます。
テキストの編集
setText() またはinsert() を使用して、テキストを変更できます。テキストを取得するにはtext() を使用し、表示されたテキストを取得するにはdisplayText() を使用します (EchoMode を参照)。setSelection() またはselectAll() でテキストを選択し、cut()、copy()、paste() で選択範囲を変更できます。テキストの位置を揃えるには、setAlignment() を使用します。
テキストが変更されると、textChanged() シグナルが出力されます。setText() を呼び出す以外の方法でテキストが変更されると、textEdited() シグナルが発せられる。カーソルが移動すると、cursorPositionChanged ()シグナルが発せられる。また、ReturnキーまたはEnterキーが選択されると、returnPressed ()シグナルが発せられる。
行編集のフォーカスが外れたり、Return/Enterキーが選択されたりしてテキスト編集が終了すると、editingFinished ()信号が出力される。
テキストが変更されずに行編集のフォーカスが失われた場合、editingFinished() シグナルは出力されません。
行編集にバリデータが設定されている場合、returnPressed()/editingFinished() シグナルは、バリデータがQValidator::Acceptable を返した場合にのみ発生します。
QLineEditのさまざまな使用方法については、行編集の例を参照してください。この例では、さまざまなプロパティやバリデータがユーザーからの入力や出力に与える影響を示しています。
フレームの設定
デフォルトでは、QLineEditsはプラットフォームのスタイルガイドで指定されたフレームを持ちます。setFrame(false)を呼び出すことで、フレームをオフにすることができます。
デフォルトのキーバインド
以下の表では、デフォルトのキーバインドについて説明します。
注: 行編集では、コンテキストメニュー(通常は右クリックで呼び出される)も提供され、以下の編集オプションのいくつかが表示されます。
キーストローク | アクション |
---|---|
左矢印 | カーソルを左に1文字移動する。 |
Shift+左矢印 | テキストを左に1文字移動し選択する。 |
右矢印 | カーソルを右に1文字移動する。 |
Shift+右矢印 | テキストを右に1文字移動し、選択します。 |
ホーム | カーソルを行頭に移動する。 |
終了 | カーソルを行末に移動する。 |
バックスペース | カーソルの左側の文字を削除する。 |
Ctrl+Backspace | カーソルの左側の単語を削除する。 |
Delete | カーソルの右側の文字を削除する。 |
Ctrl+Delete | カーソルの右側の単語を削除する。 |
Ctrl+A | すべてを選択する。 |
Ctrl+C | 選択したテキストをクリップボードにコピーします。 |
Ctrl+Insert | 選択したテキストをクリップボードにコピーします。 |
Ctrl+K | 行末まで削除します。 |
Ctrl+V | クリップボードのテキストを行編集に貼り付けます。 |
Shift+挿入 | クリップボードのテキストを行編集に貼り付けます。 |
Ctrl+X | 選択テキストを削除し、クリップボードにコピーします。 |
Shift+削除 | 選択テキストを削除し、クリップボードにコピーします。 |
Ctrl+Z | 直前の操作を取り消します。 |
Ctrl+Y | 直前に取り消した操作をやり直します。 |
有効な文字を表すその他のキー操作は、その文字を行編集に挿入します。
QTextEdit 、QLabel 、QComboBox 、および行編集例も参照のこと 。
メンバ型の説明
enum QLineEdit::ActionPosition
この列挙型は、行編集が追加されるアクションウィジェットをどのように表示すべきかを記述します。
定数 | 値 | 説明 |
---|---|---|
QLineEdit::LeadingPosition | 0 | ウィジェットは、レイアウト方向Qt::LeftToRight を使用するときはテキストの左側に、Qt::RightToLeft を使用するときは右側にそれぞれ表示されます。 |
QLineEdit::TrailingPosition | 1 | ウィジェットは、レイアウト方向Qt::LeftToRight を使用する場合はテキストの右側に、Qt::RightToLeft を使用する場合は左側にそれぞれ表示されます。 |
addAction(),removeAction(),QWidget::layoutDirectionも参照のこと 。
enum QLineEdit::EchoMode
この列挙型は、行編集がその内容をどのように表示するかを記述します。
定数 | 値 | 説明 |
---|---|---|
QLineEdit::Normal | 0 | 入力された文字を表示します。これはデフォルトです。 |
QLineEdit::NoEcho | 1 | 何も表示しない。これは、パスワードの長ささえも秘密にすべきパスワードに適しているかもしれない。 |
QLineEdit::Password | 2 | 実際に入力された文字の代わりに、プラットフォーム依存のパスワードマスク文字を表示する。 |
QLineEdit::PasswordEchoOnEdit | 3 | 入力中のみ文字を表示する。そうでない場合は、Password と同様に文字を表示する。 |
setEchoMode() およびechoMode()も参照の こと。
プロパティ Documentation
[read-only]
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
このプロパティは、行編集が空でない時にクリアボタンを表示するかどうかを保持します。
このプロパティを有効にすると、行編集にテキストが含まれる場合、末尾にclear ボタンが表示されます。そうでない場合、行編集はclear ボタンを表示しません(デフォルト)。
アクセス関数:
bool | isClearButtonEnabled() const |
void | setClearButtonEnabled(bool enable) |
addAction() およびremoveAction()も参照してください 。
cursorMoveStyle : Qt::CursorMoveStyle
このプロパティは、この行編集におけるカーソルの移動スタイルを保持する。
このプロパティをQt::VisualMoveStyle に設定すると、行編集では視覚的な移動スタイルが使用されます。左矢印キーを使用すると、テキストの記述方向に関係なく、カーソルは常に左に移動する。同じ動作が右矢印キーにも適用されます。
プロパティがQt::LogicalMoveStyle (デフォルト)に設定されている場合、左から右(LTR)テキストブロック内では、左矢印キーを使用するとカーソル位置が増加し、右矢印キーを使用するとカーソル位置が減少します。テキストブロックが右から左(RTL)の場合は、逆の動作が適用されます。
アクセス関数:
Qt::CursorMoveStyle | cursorMoveStyle() const |
void | setCursorMoveStyle(Qt::CursorMoveStyle style) |
cursorPosition : int
このプロパティは、この行編集の現在のカーソル位置を保持する。
カーソル位置を設定すると、必要に応じて再描画が行われる。
デフォルトでは、このプロパティの値は0である。
アクセス関数:
int | cursorPosition() const |
void | setCursorPosition(int) |
[read-only]
displayText : const QString
このプロパティは、表示されているテキストを保持する。
echoMode がNormal の場合、これはtext() と同じものを返す。EchoMode がPassword またはPasswordEchoOnEdit の場合、プラットフォーム依存のパスワード・マスク文字列("******" など)を返す。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) |
[read-only]
hasSelectedText : const bool
このプロパティは、テキストが選択されているかどうかを保持します。
hasSelectedText()は、テキストの一部または全部がユーザーによって選択された場合、true
を返す。そうでない場合は、false
を返します。
デフォルトでは、このプロパティはfalse
です。
関数にアクセスします:
bool | hasSelectedText() const |
selectedText()も参照 。
inputMask : QString
このプロパティは、検証入力マスクを保持する。
QLineEdit のバリデーション・マスクを設定する。バリデータは、マスクの代わりに、あるいはマスクと組み合わせて使用することができます;setValidator()を参照ください。デフォルトは空文字列で、これは入力マスクが使用されないことを意味します。
マスクの設定を解除して通常のQLineEdit 操作に戻すには、空文字列を渡す。
入力マスクは入力テンプレート文字列である。以下の要素を含むことができる:
マスク文字 | この位置で有効とみなされる入力文字のCategory 。 |
メタ文字 | さまざまな特別な意味(詳細は後述)。 |
セパレータ | 他のすべての文字は不変のセパレータとみなされる。 |
次の表に、入力マスクで使用できるマスク文字とメタ文字を示します。
マスク文字 | 意味 |
---|---|
A | A-Z、a-zなど、必須文字カテゴリーの文字。 |
a | 文字カテゴリーの文字。 |
N | A-Z、a-z、0-9など、必要な文字または数字カテゴリーの文字。 |
n | LetterまたはNumberカテゴリーの文字。 |
X | 空白以外の文字は必須。 |
x | 空白でない任意の文字。 |
9 | 0-9など、数字カテゴリーの文字が必要。 |
0 | 数字カテゴリーの文字。 |
D | Numberカテゴリの文字で、1-9など、0より大きい文字が必要。 |
d | Number」カテゴリーの文字で、「1-9」など、許可されているが必須ではないゼロより大きい文字。 |
# | Numberカテゴリの文字、またはプラス/マイナス記号。 |
H | 16進数文字は必須。A-F、a-f、0-9。 |
h | 16進文字。 |
B | 2進文字は必須。0-1. |
b | 2進文字。 |
メタ文字 | 意味 |
> | 以下のアルファベットはすべて大文字。 |
< | 以下のアルファベットはすべて小文字。 |
! | 大文字小文字の変換をオフにする。 |
;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アドレスなど)、validators とともにマスクを使用する。
アクセス関数:
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
このプロパティは、行編集のプレースホルダ・テキストを保持します。
このプロパティを設定すると、行編集が空である限り、グレー表示のプレースホルダ・テキストが表示されます。
通常、空の行編集はフォーカスがあってもプレースホルダ・テキストを表示します。しかし、コンテンツが水平方向にセンタリングされている場合、行編集にフォーカスがあってもプレースホルダ・テキストはカーソルの下に表示されません。
デフォルトでは、このプロパティには空の文字列が含まれます。
アクセス関数:
QString | placeholderText() const |
void | setPlaceholderText(const QString &) |
text()も参照のこと 。
readOnly : bool
このプロパティは、行編集が読み取り専用であるかどうかを保持します。
読み取り専用モードでは、ユーザはテキストをクリップボードにコピーしたり、テキストをドラッグ&ドロップすることはできますが(echoMode ()がNormal の場合)、編集することはできません。
QLineEdit は、読み取り専用モードではカーソルを表示しません。
デフォルトでは、このプロパティはfalse
です。
アクセス関数:
bool | isReadOnly() const |
void | setReadOnly(bool) |
setEnabled()も参照して ください。
[read-only]
redoAvailable : const bool
このプロパティは、やり直しが可能かどうかを保持します。
ユーザが行編集のテキストに対して1つ以上の取り消し操作を行うと、やり直しが利用可能になります。
デフォルトでは、このプロパティはfalse
です。
アクセス関数:
bool | isRedoAvailable() const |
[read-only]
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()も参照してください 。
[read-only]
undoAvailable : const bool
このプロパティは、取り消しが可能かどうかを保持する。
ユーザーが行編集でテキストを変更すると、元に戻すことが可能になります。
デフォルトでは、このプロパティはfalse
です。
関数にアクセスします:
bool | isUndoAvailable() const |
メンバ関数ドキュメント
[explicit]
QLineEdit::QLineEdit(QWidget *parent = nullptr)
テキストを持たない行編集を構築します。
テキストの最大長は32767文字に設定されます。
parent 引数はQWidget コンストラクタに送られます。
setText() およびsetMaxLength()も参照のこと 。
[explicit]
QLineEdit::QLineEdit(const QString &contents, QWidget *parent = nullptr)
parent の子としてテキストcontents を含む行編集を構築する。
カーソル位置は行末に、最大テキスト長は 32767 文字に設定されます。
text() およびsetMaxLength()も参照 。
[virtual noexcept]
QLineEdit::~QLineEdit()
行編集を破棄します。
void QLineEdit::addAction(QAction *action, QLineEdit::ActionPosition position)
position のアクション・リストにaction を追加します。
QAction *QLineEdit::addAction(const QIcon &icon, QLineEdit::ActionPosition position)
これはオーバーロードされた関数です。
指定されたicon を持つ新しいアクションをposition に作成します。
void QLineEdit::backspace()
テキストが選択されていない場合、テキストカーソルの左の文字を削除し、カーソルを左に1つ移動します。テキストが選択されている場合、カーソルは選択されているテキストの先頭に移動し、選択されているテキストが削除されます。
del()も参照 。
[override virtual protected]
void QLineEdit::changeEvent(QEvent *ev)
再実装:QWidget::changeEvent(QEvent *event)。
[slot]
void QLineEdit::clear()
行編集の内容を消去します。
setText() およびinsert()も参照して ください。
QCompleter *QLineEdit::completer() const
補完を提供する現在のQCompleter を返します。
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()も参照 。
[slot]
void QLineEdit::copy() const
echoMode Normal選択されたテキストをクリップボードにコピーする(クリップボードがある場合)。
QMenu *QLineEdit::createStandardContextMenu()
標準コンテキスト・メニューを作成します。このコンテキスト・メニューは、マウスの右ボタンで行編集をクリックしたときに表示されます。これは、デフォルトのcontextMenuEvent() ハンドラから呼び出されます。ポップアップ・メニューの所有権は呼び出し元に移譲されます。
void QLineEdit::cursorBackward(bool mark, int steps = 1)
カーソルをsteps 文字後ろに移動する。mark が真の場合、移動した各文字が選択範囲に追加されます。mark が偽の場合、選択範囲はクリアされる。
cursorForward()も参照のこと 。
void QLineEdit::cursorForward(bool mark, int steps = 1)
steps 文字前にカーソルを移動する。mark が真の場合、移動した各文字が選択範囲に追加される。mark が偽の場合、選択範囲はクリアされます。
cursorBackward()も参照 。
int QLineEdit::cursorPositionAt(const QPoint &pos)
カーソルの位置をポイントpos の下に返す。
[signal]
void QLineEdit::cursorPositionChanged(int oldPos, int newPos)
このシグナルは、カーソルが移動するたびに発せられる。前の位置はoldPos で与えられ、新しい位置はnewPos で与えられる。
setCursorPosition() およびcursorPosition()も参照の こと。
[protected]
QRect QLineEdit::cursorRect() const
行編集カーソルを含む矩形を返す。
void QLineEdit::cursorWordBackward(bool mark)
カーソルを 1 語後ろに移動する。mark が真の場合、その単語も選択されます。
cursorWordForward()も参照 。
void QLineEdit::cursorWordForward(bool mark)
カーソルを 1 語前方に移動する。mark が真の場合、その単語も選択される。
cursorWordBackward() も参照して ください。
[slot]
void QLineEdit::cut()
echoMode Normal選択されているテキストをクリップボードにコピーし、もしあればそれを削除する。
現在のバリデータが選択テキストの削除を許可していない場合は、 cut() は削除せずにコピーします。
copy()、paste()、setValidator()も参照 。
void QLineEdit::del()
テキストが選択されていない場合は、テキストカーソルの右側の文字を削除する。テキストが選択されている場合、カーソルは選択されているテキストの先頭に移動し、選択されているテキストが削除されます。
backspace()も参照 。
void QLineEdit::deselect()
選択されているテキストをすべて削除します。
setSelection() およびselectAll() も参照 。
[override virtual protected]
void QLineEdit::dragEnterEvent(QDragEnterEvent *e)
再インプリメント:QWidget::dragEnterEvent(QDragEnterEvent *event)。
[override virtual protected]
void QLineEdit::dragLeaveEvent(QDragLeaveEvent *e)
再インプリメント:QWidget::dragLeaveEvent(QDragLeaveEvent *event)。
[override virtual protected]
void QLineEdit::dragMoveEvent(QDragMoveEvent *e)
再リンプルメント: (QDragLeaveEvent *event):QWidget::dragMoveEvent(QDragMoveEvent *event)。
[override virtual protected]
void QLineEdit::dropEvent(QDropEvent *e)
再リンプルメント:QWidget::dropEvent(QDropEvent *event)。
[signal]
void QLineEdit::editingFinished()
このシグナルは、ReturnキーまたはEnterキーが使用されたとき、または行編集がフォーカスを失い、最後にこのシグナルが発行されたときから内容が変更されたときに発行されます。
注意: 行編集にvalidator() またはinputMask() が設定され、Enter/Return が使用された場合、editingFinished() シグナルは、入力がinputMask() に続き、validator() がQValidator::Acceptable を返した場合にのみ発行されます。
void QLineEdit::end(bool mark)
テキスト・カーソルがすでに行末にある場合を除き、テキスト・カーソルを行末に移動する。mark が真の場合、テキストは最後の位置に向かって選択される。そうでない場合、カーソルが移動すると、選択されているテキストはすべて非選択になります。
home()も参照 。
[override virtual]
bool QLineEdit::event(QEvent *e)
再実装:QWidget::event(QEvent *event)。
[override virtual protected]
void QLineEdit::focusInEvent(QFocusEvent *e)
再実装:QWidget::focusInEvent(QFocusEvent *event)。
[override virtual protected]
void QLineEdit::focusOutEvent(QFocusEvent *e)
再リンプルメント: (QFocusEvent *event):QWidget::focusOutEvent(QFocusEvent *event)。
void QLineEdit::home(bool mark)
テキストカーソルがすでに行頭にある場合を除き、テキストカーソルを行頭に移動します。mark が true の場合、テキストは最初の位置に向かって選択されます。そうでない場合、カーソルが移動すると、選択されているテキストはすべて非選択になります。
end()も参照 。
[virtual protected]
void QLineEdit::initStyleOption(QStyleOptionFrame *option) const
このQLineEdit の値でoption を初期化します。このメソッドは、サブクラスが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.
[signal]
void QLineEdit::inputRejected()
このシグナルは、ユーザが有効な入力とみなされないキーを使用したときに発行されます。たとえば、あるキーを使用した結果バリデータのvalidate() がInvalid を返した場合などです。もう1つのケースは、行編集の最大長を超える文字を入力しようとした場合である。
注意: このシグナルは、テキストの一部しか受け付けられない場合でも発せられる。例えば、最大長が設定されていて、クリップボードのテキストが貼り付けられたときに最大長より長い場合です。
void QLineEdit::insert(const QString &newText)
選択されたテキストを削除し、newText を挿入し、その結果を検証します。有効であれば、新しいテキストが行編集の新しい内容として設定されます。
[override virtual protected]
void QLineEdit::keyPressEvent(QKeyEvent *event)
再実装:QWidget::keyPressEvent(QKeyEvent *event)。
与えられたキー押下event を行編集アクションに変換します。
Return または Enter が使用され、現在のテキストが有効な場合 (またはバリデータがmade valid を指定できる場合)、シグナルreturnPressed() が出力されます。
Default Key Bindingsも参照のこと 。
[override virtual protected]
void QLineEdit::keyReleaseEvent(QKeyEvent *e)
再インプリメント:QWidget::keyReleaseEvent(QKeyEvent *event)。
[override virtual]
QSize QLineEdit::minimumSizeHint() const
プロパティのアクセス関数を再インプリメントします:QWidget::minimumSizeHint 。
行編集の最小サイズを返します。
返される幅は通常、少なくとも1文字分です。
[override virtual protected]
void QLineEdit::mouseDoubleClickEvent(QMouseEvent *e)
再実装:QWidget::mouseDoubleClickEvent(QMouseEvent *event)。
[override virtual protected]
void QLineEdit::mouseMoveEvent(QMouseEvent *e)
Reimplements: (QMouseEvent *event):QWidget::mouseMoveEvent(QMouseEvent *event)。
[override virtual protected]
void QLineEdit::mousePressEvent(QMouseEvent *e)
再リンプルメント: (QMouseEvent *event)QWidget::mousePressEvent(QMouseEvent *event).
[override virtual protected]
void QLineEdit::mouseReleaseEvent(QMouseEvent *e)
再リンプルメント: (QMouseEvent *event)QWidget::mouseReleaseEvent(QMouseEvent *event).
[override virtual protected]
void QLineEdit::paintEvent(QPaintEvent *)
再リンプルメント: (QMouseEvent *event):QWidget::paintEvent(QPaintEvent *event)。
[slot]
void QLineEdit::paste()
クリップボードのテキストをカーソル位置に挿入し、行編集がread-only でない場合に選択されたテキストを削除します。
最終結果が現在のvalidator に対して無効である場合、何も起こらない。
[slot]
void QLineEdit::redo()
redo がavailable である場合、最後の操作をやり直す。
[signal]
void QLineEdit::returnPressed()
このシグナルは、ReturnキーまたはEnterキーが使用されたときに発せられる。
注意: 行編集にvalidator() またはinputMask() が設定されている場合、returnPressed() シグナルが発せられるのは、入力がinputMask() に続き、validator() がQValidator::Acceptable を返す場合のみです。
[slot]
void QLineEdit::selectAll()
すべてのテキストを選択し(ハイライトし)、カーソルを末尾に移動します。
注: ウィジェットをクリックする前にユーザーが入力すると、選択されたテキストが削除されるため、デフォルト値が挿入されている場合に便利です。
setSelection() およびdeselect()も参照 。
[signal]
void QLineEdit::selectionChanged()
このシグナルは、選択範囲が変更されるたびに発行されます。
hasSelectedText() およびselectedText() も参照 。
int QLineEdit::selectionEnd() const
行編集で選択範囲の直後の文字のインデックスを返します (テキストが選択されていない場合は -1)。
selectedText()、selectionStart() およびselectionLength()も参照 。
int QLineEdit::selectionLength() const
選択範囲の長さを返します。
selectedText()、selectionStart()、selectionEnd() も参照 。
int QLineEdit::selectionStart() const
行編集で最初に選択された文字のインデックスを返します (テキストが選択されていない場合は -1)。
selectedText()、selectionEnd()、selectionLength() も参照 。
void QLineEdit::setCompleter(QCompleter *c)
この行編集を、補完子c からの自動補完を提供するように設定する。補完モードはQCompleter::setCompletionMode() で設定する。
QValidator またはQLineEdit::inputMask とともにQCompleter を使用するには、QCompleter に提供されるモデルに有効なエントリが含まれていることを確認する必要があります。QSortFilterProxyModel を使用すると、QCompleter のモデルに有効な項目のみが含まれるようにすることができる。
補完子を削除して自動補完を無効にするには、nullptr
を渡す。
completer() およびQCompleterも参照。
void QLineEdit::setSelection(int start, int length)
start の位置から、length 文字のテキストを選択します。負の長さを指定できます。
deselect()、selectAll() およびselectedText() も参照して ください。
void QLineEdit::setTextMargins(const QMargins &margins)
フレーム内のテキストの周囲margins を設定します。
textMargins() も参照 。
void QLineEdit::setTextMargins(int left, int top, int right, int bottom)
フレーム内のテキストを囲む余白を、left 、top 、right 、bottom のサイズに設定します。
textMargins() も参照 。
void QLineEdit::setValidator(const QValidator *v)
行編集の値のバリデーターをv に設定します。
行編集のreturnPressed() およびeditingFinished() シグナルは、v が行編集の内容をAcceptable として検証した場合にのみ出力される。ユーザは編集中に内容をIntermediate の任意の値に変更することができますが、v がInvalid として検証した値にテキストを編集することはできません。
これにより、編集が完了したときに保存されるテキストを制限しながら、ユーザーがテキストを有効な状態から別の状態に編集できる十分な自由を残すことができます。
現在の入力バリデータを削除するには、nullptr
を渡します。初期設定では入力バリデータはありません (maxLength() まではどのような入力も受け付けます)。
validator()、hasAcceptableInput()、QIntValidator 、QDoubleValidator 、QRegularExpressionValidatorも参照のこと 。
[override virtual]
QSize QLineEdit::sizeHint() const
プロパティのアクセス関数を再実装:QWidget::sizeHint 。
ウィジェットの推奨サイズを返す。
ピクセル単位で返される幅は、通常約15文字から20文字で十分である。
[signal]
void QLineEdit::textChanged(const QString &text)
このシグナルは、テキストが変更されるたびに発行される。引数text は新しいテキストである。
textEdited() とは異なり、このシグナルは、setText() を呼び出すなどして、プログラム的にテキストが変更されたときにも発せられます。
注: text プロパティのノーティファイア・シグナル。
[signal]
void QLineEdit::textEdited(const QString &text)
このシグナルは、テキストが編集されるたびに発行されます。text の引数は新しいテキストです。
textChanged() とは異なり、このシグナルは、setText() を呼び出すなどして、プログラム的にテキストが変更されたときには発行されません。
QMargins QLineEdit::textMargins() const
ウィジェットのテキストのマージンを返します。
setTextMargins()も参照してください 。
[override virtual]
void QLineEdit::timerEvent(QTimerEvent *e)
再インプリメント:QObject::timerEvent(QTimerEvent *event)。
[slot]
void QLineEdit::undo()
undo がavailable の場合、最後の操作を元に戻します。現在の選択範囲の選択を解除し、選択範囲の開始位置を現在のカーソル位置に更新します。
const QValidator *QLineEdit::validator() const
現在の入力バリデータへのポインタを返します。バリデータが設定されていない場合はnullptr
を返します。
setValidator()も参照してください 。
©2024 The Qt Company Ltd. 本文書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。