基於QLineEdit而寫的文本單行編輯器。
上手使用了該編輯器示例,並歸納出以下主要功能分享給大家。
回顯模式
根據不同的場合顯示字符的不同顯示模式,比較常用的模式有密碼模式。
- 使用接口:
void QLineEdit::setEchoMode(QLineEdit::EchoMode mode)
- 回顯模式可設置列表:
回顯模式 | 含義 |
---|---|
Normal | 在輸入字符時顯示它們。默認值 |
Password | 顯示平臺相關的密碼掩碼字符,而不是實際輸入的字符。 |
PasswordEchoOnEdit | 在編輯時顯示輸入的字符,否則Password模式顯示。 |
NoEcho | 不顯示任何東西。使用保密性較高的場合。 |
輸入掩碼
這隻允許用戶在遵循簡單規則的行編輯中鍵入字符,使用不同的掩碼在編輯前將會預先固定顯示相應的字符掩碼。
- 使用接口:
void QLineEdit::setInputMask(const QString &inputMask)
- 示例中的相應掩碼:
掩碼值 | 含義 |
---|---|
+99 99 99 99 99;_ |
電話格式掩碼 |
0000-00-00 |
ISO格式日期格式掩碼 |
>AAAAA-AAAAA-AAAAA-AAAAA-AAAAA;# |
序列號格式掩碼 |
- 另外Qt君也整理了一些輸入掩碼:
掩碼值 | 含義 |
---|---|
+86 999 9999 9999;_ |
手機格式掩碼 |
000.000.000.000;_ |
IP格式掩碼 |
HH:HH:HH:HH:HH:HH;_ |
MAC網卡地址掩碼 |
\\0\\xHH;0 |
十六進制格式掩碼 |
驗證器
通過設置QValidator驗證器來限制文本輸入,一般有QIntValidator(整型值驗證器), QDoubleValidator(浮點值驗證器), QRegularExpressionValidator(正則表達式驗證器)等。
- 使用接口:
void QLineEdit::setValidator(const QValidator *v)
- 示例中的驗證器:
驗證器 | 含義 |
---|---|
0 | 重置驗證器 |
QIntValidator |
只能輸入整型值內容,還可以設置輸入的範圍。 |
QDoubleValidator(-999.0, 999.0, 2) |
只能輸入-999.00到999.00的浮點值,小數精度值爲2。 |
只讀模式
通過設置setReadOnly
接口的true或false來控制QLineEdit是否啓用該模式。在只讀模式下,用戶仍然可以將文本複製到剪貼板,或者拖放文本(但回顯需是Normal模式),但是不能編輯它。另外只讀模式下不顯示光標。
- 使用接口:
void setReadOnly(bool status)
文本對齊模式
通過設置setAlignment
對齊參數值可以控制不同方向的顯示。
- 使用接口:
void setAlignment(Qt::Alignment flag)
- 示例中使用到的對齊方式:
模式 | 含義 |
---|---|
AlignLeft | 左對齊 |
AlignCenter | 居中對齊 |
AlignRight | 右對齊 |
- 除了這些方式外還有這些常用對齊方式:
模式 | 含義 |
---|---|
AlignJustify | 本文儘量兩端對齊(多用在多行文本顯示) |
AlignTop | 頂部對齊 |
AlignBottom | 底部對齊 |
AlignVCenter | 垂直中心對齊 |
AlignHCenter | 水平中心對齊 |
AlignBaseline | 與基線對齊 |
關於更多
- 在QtCreator軟件可以找到:
- 或在以下Qt安裝目錄找到:
C:\Qt\{你的Qt版本}\Examples\{你的Qt版本}\widgets\widgets\lineedits
- 相關鏈接
https://doc.qt.io/qt-5/qtwidgets-widgets-lineedits-example.html
- Qt君公衆號回覆『Qt示例』獲取更多內容。