QLineEdit 類

The QLineEdit 小部件是 1 行文本編輯器。 更多...

頭: #include <QLineEdit>
qmake: QT += widgets
繼承: 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 )
void getTextMargins (int * left , int * top , int * right , int * bottom ) const
bool hasAcceptableInput () const
bool hasFrame () const
bool hasSelectedText () const
void home (bool mark )
QString inputMask () const
void insert (const QString & newText )
bool isClearButtonEnabled () const
bool isModified () const
bool isReadOnly () const
bool isRedoAvailable () const
bool isUndoAvailable () const
int maxLength () const
QString placeholderText () const
QString selectedText () const
int selectionEnd () const
int selectionLength () const
int selectionStart () const
void setAlignment (Qt::Alignment flag )
void setClearButtonEnabled (bool enable )
void setCompleter (QCompleter * c )
void setCursorMoveStyle (Qt::CursorMoveStyle style )
void setCursorPosition ( int )
void setDragEnabled (bool b )
void setEchoMode ( QLineEdit::EchoMode )
void setFrame ( bool )
void setInputMask (const QString & inputMask )
void setMaxLength ( int )
void setModified ( bool )
void setPlaceholderText ( const QString & )
void setReadOnly ( bool )
void setSelection (int start , int length )
void setTextMargins (int left , int top , int right , int bottom )
void setTextMargins (const QMargins & margins )
void setValidator (const QValidator * v )
QString text () const
QMargins textMargins () const
const QValidator * validator () const

重實現公共函數

virtual bool event (QEvent * e ) override
virtual QVariant inputMethodQuery (Qt::InputMethodQuery property ) const override
virtual QSize minimumSizeHint () const override
virtual QSize sizeHint () const 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 )

靜態公共成員

const QMetaObject staticMetaObject

保護函數

QRect cursorRect () const
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 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

額外繼承成員

詳細描述

The QLineEdit 小部件是 1 行文本編輯器。

行編輯允許用戶鍵入和編輯單行純文本,采用有用編輯功能的集閤,包括:撤消/重做、剪切/粘貼及拖放 (見 setDragEnabled ()).

通過改變 echoMode () 為行編輯,它還可以用作隻寫字段 (用於密碼之類的輸入)。

可以把文本長度約束到 maxLength ()。可以任意約束文本使用 validator () 或 inputMask (),或兩者。當在同一行編輯的驗證器和輸入掩碼之間切換時,最好清零驗證器或輸入掩碼,以防未定義行為。

相關類 QTextEdit 允許多行,編輯富文本。

可以改變文本采用 setText () 或 insert ()。文本的檢索采用 text ();顯示文本 (可能不同,見 EchoMode ) 的檢索采用 displayText ()。可以選擇文本采用 setSelection () 或 selectAll (), 且選擇可以被 cut (), copy () 和 paste ()。可以對齊文本采用 setAlignment ().

當文本改變時 textChanged () 信號被發射;當文本改變時,除瞭通過調用 setText () textEdited () 信號被發射;當光標移動時 cursorPositionChanged () 信號被發射;而當按下 Return 或 Enter 鍵時 returnPressed () 信號發射。

當編輯完成時,由於行編輯失去聚焦或按下 Return/Enter 鍵 editingFinished () 信號發射。

注意:若行編輯有設置驗證器, returnPressed ()/ editingFinished () 信號纔會被發射,若驗證器返迴 QValidator::Acceptable .

默認情況下,QLineEdit 擁有由平颱風格指南指定的框架;可以關閉它通過調用 setFrame (false).

默認鍵綁定的描述見下文。行編輯還提供上下文菜單 (通常通過鼠標右鍵援引),呈現這些編輯選項中的一些。

按鍵 動作
Left Arrow 左移光標一字符。
Shift+Left Arrow 左移並選擇文本一字符。
Right Arrow 右移光標一字符。
Shift+Right Arrow 右移並選擇文本一字符。
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 , GUI 設計手冊:字段、條目 ,和 行編輯範例 .

成員類型文檔編製

enum QLineEdit:: ActionPosition

此枚舉類型描述行編輯應該如何顯示要被添加的動作 Widget。

常量 描述
QLineEdit::LeadingPosition 0 Widget 顯示在文本左側當使用布局方嚮 Qt::LeftToRight 或右側當使用 Qt::RightToLeft ,分彆。
QLineEdit::TrailingPosition 1 Widget 顯示在文本右側當使用布局方嚮 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 and Qt::AlignVCenter .

訪問函數:

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

另請參閱 Qt::Alignment .

clearButtonEnabled : bool

此特性保持行編輯是否顯示清零按鈕,當它非空時。

若啓用,行編輯顯示結尾 clear 按鈕 (當它包含一些文本時),否則,行編輯不展示清零按鈕 (默認)。

該特性在 Qt 5.2 引入。

訪問函數:

bool isClearButtonEnabled () const
void setClearButtonEnabled (bool enable )

另請參閱 addAction () 和 removeAction ().

cursorMoveStyle : Qt::CursorMoveStyle

此特性保持此行編輯光標的移動樣式。

當此特性被設為 Qt::VisualMoveStyle ,行編輯將使用視覺移動樣式。按左箭頭鍵將始終導緻光標嚮左移動,不管文本的書寫方嚮。同樣的行為適用於右箭頭鍵。

當特性為 Qt::LogicalMoveStyle (默認),在 LTR 文本塊中,當按左箭頭鍵時增加光標位置,當按右箭頭鍵時減少光標位置。若文本塊是 (RTL) 從右到左,適用相反行為。

該特性在 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 is Normal 這返迴如同 text ();若 EchoMode is Password or PasswordEchoOnEdit 它返迴字符串對於從屬平颱的口令掩碼字符 text (). length () 按尺寸,如 ******;若 EchoMode is NoEcho 返迴 "" 空字符串。

默認情況下,此特性包含空字符串。

訪問函數:

QString displayText () const

另請參閱 setEchoMode (), text (),和 EchoMode .

dragEnabled : bool

此特性保存 QLineEdit 是否開始拖拽,若用戶在某些選中文本上按下並移動鼠標。

拖拽默認禁用。

訪問函數:

bool dragEnabled () const
void setDragEnabled (bool b )

echoMode : EchoMode

此特性保持行編輯的迴顯模式。

迴顯模式確定行編輯錄入的文本,如何顯示 (或迴顯) 給用戶。

最常見設置為 Normal ,用戶鍵入的文本逐字顯示,但 QLineEdit 還支持允許抑製 (或遮蓋) 錄入文本的模式:這些包括 NoEcho , Password and PasswordEchoOnEdit .

Widget 的顯示及拷貝或拖拽文本的能力,受此設置影響。

默認情況下,此特性被設為 Normal .

訪問函數:

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

另請參閱 EchoMode and 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 操作通過傳遞 "" 空字符串。

The table below shows the characters that can be used in an input mask. A space character, the default character for a blank, is needed for cases where a character is permitted but not required .

字符 含義
A ASCII alphabetic character required. A-Z, a-z.
a ASCII alphabetic character permitted but not required.
N ASCII alphanumeric character required. A-Z, a-z, 0-9.
n ASCII alphanumeric character permitted but not required.
X Any character required.
x Any character permitted but not required.
9 ASCII digit required. 0-9.
0 ASCII digit permitted but not required.
D ASCII digit required. 1-9.
d ASCII digit permitted but not required (1-9).
# ASCII digit or plus/minus sign permitted but not required.
H 要求的十六進製字符 A-F、a-f、0-9。
h 準許但非要求的十六進製字符。
B 要求的二進製字符 0-1。
b 準許但非要求的二進製字符。
> 所有之後字母字符大寫。
< 所有之後字母字符小寫。
! 關閉大小寫轉換。
[ ] { } 預留。
\ 使用 \ 轉義上文列齣的特殊字符以將它們用作分隔符。

The mask consists of a string of mask characters and separators, optionally followed by a semicolon and the character used for blanks. The blank characters are always removed from the text after editing.

範例:

掩碼 注意事項
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 .

maxLength : int

此特性保持文本的最大準許長度。

若文本太長,則在限製處截取它。

若齣現截斷,取消任何選中文本的選定,將光標位置設為 0 並展示字符串的第一部分。

若行編輯擁有輸入掩碼,掩碼將定義最大字符串長度。

默認情況下,此特性包含 32767 值。

訪問函數:

int maxLength () const
void setMaxLength ( int )

另請參閱 inputMask .

modified : bool

此特性保持行編輯內容是否已被用戶修改。

修改標誌從不被讀取由 QLineEdit ;它擁有默認值 false,且被改為 true 每當用戶改變行編輯內容時。

這對需要提供默認值但一開始不知道默認值應該是什麼 (或許取決於錶單中的其它字段) 的情況,很有用。在沒有最佳默認值的情況下開始行編輯,且當默認值已知時,若 modified() 返迴 false (用戶沒有鍵入任何文本),插入默認值。

調用 setText () 重置修改標誌為 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 ( QWidget * parent = nullptr)

構造行編輯不采用文本。

最大文本長度被設為 32767 個字符。

The parent 自變量被發送給 QWidget 構造函數。

另請參閱 setText () 和 setMaxLength ().

QLineEdit:: QLineEdit (const QString & contents , QWidget * parent = nullptr)

構造行編輯包含文本 contents .

光標位置被設為行尾,且最大文本長度被設為 32767 個字符。

The parent 和自變量被發送給 QWidget 構造函數。

另請參閱 text () 和 setMaxLength ().

[虛擬] QLineEdit:: ~QLineEdit ()

銷毀行編輯。

void QLineEdit:: addAction ( QAction * action , QLineEdit::ActionPosition position )

添加 action 到動作列錶在 position .

該函數在 Qt 5.2 引入。

QAction *QLineEdit:: addAction (const QIcon & icon , QLineEdit::ActionPosition position )

這是重載函數。

創建新動作采用給定 icon position .

該函數在 Qt 5.2 引入。

void QLineEdit:: backspace ()

若未選擇文本,刪除文本光標左側字符並左移光標一位置。若有選擇任何文本,光標將移至選定文本的開頭並刪除所選文本。

另請參閱 del ().

[override virtual protected] void QLineEdit:: changeEvent ( QEvent * ev )

重實現自 QWidget::changeEvent ().

[slot] void QLineEdit:: clear ()

清零行編輯的內容。

另請參閱 setText () 和 insert ().

QCompleter *QLineEdit:: completer () const

返迴當前 QCompleter ,其提供補全。

該函數在 Qt 4.2 引入。

另請參閱 setCompleter ().

[override virtual protected] void QLineEdit:: contextMenuEvent ( QContextMenuEvent * event )

重實現自 QWidget::contextMenuEvent ().

展示標準上下文菜單,創建采用 createStandardContextMenu ().

若不希望行編輯擁有上下文菜單,可以設置它的 contextMenuPolicy to Qt::NoContextMenu 。若想要定製上下文菜單,重實現此函數。若想要擴展標準上下文菜單,重實現此函數,調用 createStandardContextMenu () 並擴展返迴菜單。

void LineEdit::contextMenuEvent(QContextMenuEvent *event)
{
    QMenu *menu = createStandardContextMenu();
    menu->addAction(tr("My Menu Item"));
    //...
    menu->exec(event->globalPos());
    delete menu;
}
					

The event 參數用於獲取鼠標光標位置,當生成事件時。

另請參閱 setContextMenuPolicy ().

[slot] void QLineEdit:: copy () const

把選中文本拷貝到剪貼闆 (若有的話),且若 echoMode () 是 Normal .

另請參閱 cut () 和 paste ().

QMenu *QLineEdit:: createStandardContextMenu ()

此函數創建要展示的標準上下文菜單,當用戶采用鼠標右鍵點擊行編輯時。它被調用從默認 contextMenuEvent () 處理程序。彈齣菜單的所有權會轉移給調用者。

void QLineEdit:: cursorBackward ( bool mark , int steps = 1)

後移光標 steps 字符。若 mark 為 true,每個移過字符會被添加到選定;若 mark 為 False,清零選定。

另請參閱 cursorForward ().

void QLineEdit:: cursorForward ( bool mark , int steps = 1)

前移光標 steps 字符。若 mark 為 true,每個移過字符會被添加到選定;若 mark 為 False,清零選定。

另請參閱 cursorBackward ().

int QLineEdit:: cursorPositionAt (const QPoint & pos )

返迴光標位置在點 pos .

[signal] void QLineEdit:: cursorPositionChanged ( int oldPos , int newPos )

此信號被發射每當光標移動時。先前位置被給定由 oldPos ,和新位置由 newPos .

另請參閱 setCursorPosition () 和 cursorPosition ().

[protected] QRect QLineEdit:: cursorRect () const

返迴包括行編輯光標的矩形。

該函數在 Qt 4.4 引入。

void QLineEdit:: cursorWordBackward ( bool mark )

將光標後移一單詞。若 mark 為 true,單詞還被選中。

另請參閱 cursorWordForward ().

void QLineEdit:: cursorWordForward ( bool mark )

將光標前移一單詞。若 mark 為 true,單詞還被選中。

另請參閱 cursorWordBackward ().

[slot] void QLineEdit:: cut ()

把選中文本拷貝到剪貼闆且刪除它 (若有的話),且若 echoMode () 是 Normal .

若當前驗證器禁止刪除選中文本,cut() 將拷貝而不刪除。

另請參閱 copy (), paste (),和 setValidator ().

void QLineEdit:: del ()

若未選擇文本,刪除文本光標右側字符。若有選擇任何文本,光標將移至選定文本的開頭並刪除所選文本。

另請參閱 backspace ().

void QLineEdit:: deselect ()

取消任何選中文本的選擇。

另請參閱 setSelection () 和 selectAll ().

[override virtual protected] void QLineEdit:: dragEnterEvent ( QDragEnterEvent * e )

重實現自 QWidget::dragEnterEvent ().

[override virtual protected] void QLineEdit:: dragLeaveEvent ( QDragLeaveEvent * e )

重實現自 QWidget::dragLeaveEvent ().

[override virtual protected] void QLineEdit:: dragMoveEvent ( QDragMoveEvent * e )

重實現自 QWidget::dragMoveEvent ().

[override virtual protected] void QLineEdit:: dropEvent ( QDropEvent * e )

重實現自 QWidget::dropEvent ().

[signal] void QLineEdit:: editingFinished ()

此信號被發射當 Return/Enter 鍵被按下或行編輯丟失聚焦時。注意:若有 validator () 或 inputMask () 設置在行編輯且 Enter/Return 鍵被按下,editingFinished() 信號纔會被發射,若輸入緊跟 inputMask () 和 validator () 返迴 QValidator::Acceptable .

void QLineEdit:: end ( bool mark )

把文本光標移至行尾,除非光標已經到那裏。若 mark 為 true,選擇文本到最後位置;否則,取消選擇任何文本的選定若光標被移動。

另請參閱 home ().

[override virtual] bool QLineEdit:: event ( QEvent * e )

重實現自 QWidget::event ().

[override virtual protected] void QLineEdit:: focusInEvent ( QFocusEvent * e )

重實現自 QWidget::focusInEvent ().

[override virtual protected] void QLineEdit:: focusOutEvent ( QFocusEvent * e )

重實現自 QWidget::focusOutEvent ().

void QLineEdit:: getTextMargins ( int * left , int * top , int * right , int * bottom ) const

Returns the widget's text margins for left , top , right ,和 bottom .

該函數在 Qt 4.5 引入。

另請參閱 setTextMargins ().

void QLineEdit:: home ( bool mark )

將文本光標移至行首,除非光標已經在那裏。若 mark 為 true,選擇文本到第一位置;否則,取消選擇任何文本的選定若光標被移動。

另請參閱 end ().

[protected] void QLineEdit:: initStyleOption ( QStyleOptionFrame * option ) const

初始化 option 采用值來自此 QLineEdit 。此方法對子類是有用的,當需要 QStyleOptionFrame ,但不希望自己填充所有信息。

另請參閱 QStyleOption::initFrom ().

[override virtual protected] void QLineEdit:: inputMethodEvent ( QInputMethodEvent * e )

重實現自 QWidget::inputMethodEvent ().

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

重實現自 QWidget::inputMethodQuery ().

[signal] void QLineEdit:: inputRejected ()

此信號被發射當用戶按下不被認為是可接受輸入的鍵時。例如,若按鍵導緻驗證器的 validate() 調用返迴 Invalid (無效)。另一情況是試著鍵入超齣行編輯最大長度的更多字符。

注意:此信號仍會被發射,在部分文本被接受但不是全部的情況下。例如,若有設置最大長度,而剪貼闆文本長於粘貼時的最大長度。

該函數在 Qt 5.12 引入。

void QLineEdit:: insert (const QString & newText )

刪除任何選中文本,插入 newText ,並驗證結果。若有效,則將其設為行編輯的新內容。

另請參閱 setText () 和 clear ().

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

重實現自 QWidget::keyPressEvent ().

轉換給定鍵按下 event 成行編輯動作。

若 Return 或 Enter 鍵被按下且當前文本有效 (或可以是 使有效 通過驗證器),信號 returnPressed () 發射。

默認鍵綁定列錶在類的詳細描述中。

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

重實現自 QWidget::minimumSizeHint ().

返迴行編輯最小尺寸。

The width returned is enough for at least one character.

[override virtual protected] void QLineEdit:: mouseDoubleClickEvent ( QMouseEvent * e )

重實現自 QWidget::mouseDoubleClickEvent ().

[override virtual protected] void QLineEdit:: mouseMoveEvent ( QMouseEvent * e )

重實現自 QWidget::mouseMoveEvent ().

[override virtual protected] void QLineEdit:: mousePressEvent ( QMouseEvent * e )

重實現自 QWidget::mousePressEvent ().

[override virtual protected] void QLineEdit:: mouseReleaseEvent ( QMouseEvent * e )

重實現自 QWidget::mouseReleaseEvent ().

[override virtual protected] void QLineEdit:: paintEvent ( QPaintEvent * )

重實現自 QWidget::paintEvent ().

[slot] void QLineEdit:: paste ()

將剪貼闆文本插入在光標位置處,刪除任何選中文本,若行編輯不為 隻讀 .

If the end result would not be acceptable to the current validator ,什麼都不發生。

另請參閱 copy () 和 cut ().

[slot] void QLineEdit:: redo ()

重做上一操作,若重做 available .

[signal] void QLineEdit:: returnPressed ()

此信號發射,當按下 Return/Enter 鍵。注意,若存在 validator () 或 inputMask () 設置在行編輯,returnPressed() 信號纔發射,若輸入跟隨 inputMask () 和 validator () 返迴 QValidator::Acceptable .

[slot] void QLineEdit:: selectAll ()

選擇所有文本 (即:突顯文本) 並將光標移至末尾。這很有用當插入默認值時,因為若用戶在點擊 Widget 之前鍵入,則選中文本會被刪除。

另請參閱 setSelection () 和 deselect ().

[signal] void QLineEdit:: selectionChanged ()

此信號發射,每當選定改變時。

另請參閱 hasSelectedText () 和 selectedText ().

int QLineEdit:: selectionEnd () const

返迴行編輯選定之後的直接字符索引,或-1 若未選中文本。

該函數在 Qt 5.10 引入。

另請參閱 selectedText (), selectionStart (),和 selectionLength ().

int QLineEdit:: selectionLength () const

返迴選定長度。

該函數在 Qt 5.10 引入。

另請參閱 selectedText (), selectionStart (),和 selectionEnd ().

int QLineEdit:: selectionStart () const

返迴行編輯第一選中字符的索引,或 -1 若沒有文本被選中。

另請參閱 selectedText (), selectionEnd (),和 selectionLength ().

void QLineEdit:: setCompleter ( QCompleter * c )

將為此行編輯提供自動補全的補全器設為 c 。補全模式的設置是使用 QCompleter::setCompletionMode ().

要使用 QCompleter 采用 QValidator or QLineEdit::inputMask ,需要確保模型被提供給 QCompleter 包含有效條目。可以使用 QSortFilterProxyModel 以確保 QCompleter 的模型隻包含有效條目。

c == 0,setCompleter() 將移除當前補全器,有效禁用自動補全。

該函數在 Qt 4.2 引入。

另請參閱 completer () 和 QCompleter .

void QLineEdit:: setSelection ( int start , int length )

選擇文本從位置 start 和對於 length 個字符。負長度是允許的。

另請參閱 deselect (), selectAll (),和 selectedText ().

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

將框架圍繞文本的邊距尺寸設為 left , top , right ,和 bottom .

另請參閱 getTextMargins ().

該函數在 Qt 4.5 引入。

另請參閱 textMargins ().

void QLineEdit:: setTextMargins (const QMargins & margins )

設置 margins 圍繞文本在框架內。

另請參閱 textMargins ().

該函數在 Qt 4.6 引入。

void QLineEdit:: setValidator (const QValidator * v )

Sets this line edit to only accept input that the validator, v , will accept. This allows you to place any arbitrary constraints on the text which may be entered.

v == 0,setValidator() 將移除當前輸入驗證器。初始設置沒有輸入驗證器 (即:接受任何輸入最多 maxLength ()).

另請參閱 validator (), hasAcceptableInput (), QIntValidator , QDoubleValidator ,和 QRegExpValidator .

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

重實現自 QWidget::sizeHint ().

返迴 Widget 的推薦尺寸。

返迴寬度 (以像素為單位),通常夠大約 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

返迴 Widget 的文本邊距。

該函數在 Qt 4.6 引入。

另請參閱 setTextMargins ().

[slot] void QLineEdit:: undo ()

撤消上一操作,若撤消 available 。取消當前任何選定,並將選擇起始更新成當前光標位置。

const QValidator *QLineEdit:: validator () const

Returns a pointer to the current input validator, or 0 if no validator has been set.

另請參閱 setValidator ().