在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C/ Qt 學(xué)習(xí)之路(18): Qt 標(biāo)準(zhǔn)對話框之 QInputDialog
Qt 容器和算法拾遺
自定義 model 之一
反走樣
Hello, world!
Qt 容器類之關(guān)聯(lián)存儲(chǔ)容器
QStringListModel
拖放技術(shù)之一
狀態(tài)欄
QTreeWidget
拖放技術(shù)之二
通用算法
event()
Qt 學(xué)習(xí)之路(18): Qt 標(biāo)準(zhǔn)對話框之 QInputDialog
Qt 容器類之遍歷器和隱式數(shù)據(jù)共享
QListWidget
Meta-Object 系統(tǒng)
事件接收與忽略
Qt 學(xué)習(xí)之路(tip): parent 參數(shù)
Qt 標(biāo)準(zhǔn)對話框之 QColorDialog
QPainter(續(xù))
國際化(下)
漸變填充
自定義委托
創(chuàng)建 shared library
model-view 架構(gòu)
Graphics View Framework
自定義拖放數(shù)據(jù)對象
QSortFilterProxyModel
國際化(上)
組件布局
自定義 Model 之三
事件過濾器
QDirModel
Hello, world!(續(xù))
Qt 標(biāo)準(zhǔn)對話框之 QFileDialog
自定義 model 之二
深入了解信號槽
坐標(biāo)變換
剪貼板操作
QTableWidget
QByteArray 和 QVariant
創(chuàng)建一個(gè)對話框(下)
Qt 學(xué)習(xí)之路(32): 一個(gè)簡易畫板的實(shí)現(xiàn)(Graphics View)
文本文件讀寫
自定義事件
編寫跨平臺的程序
MainWindow
初探信號槽
Qt 學(xué)習(xí)之路(17): Qt 標(biāo)準(zhǔn)對話框之 QMessageBox
繪圖設(shè)備
菜單和工具條(續(xù))
二進(jìn)制文件讀寫
QString
事件(event)
菜單和工具條
QPainter
Qt 容器類之順序存儲(chǔ)容器
進(jìn)程間交互
API 文檔的使用
創(chuàng)建一個(gè)對話框(上)
一個(gè)簡易畫板的實(shí)現(xiàn)(QWidget)

Qt 學(xué)習(xí)之路(18): Qt 標(biāo)準(zhǔn)對話框之 QInputDialog

這是 Qt 標(biāo)準(zhǔn)對話框的最后一部分。正如同其名字顯示的一樣,QInputDialog 用于接收用戶的輸入。QInputDialog 提供了一些簡單的 static 函數(shù),用于快速的建立一個(gè)對話框,正像 QColorDialog提供了 getColor 函數(shù)一樣。

首先來看看 getText 函數(shù):

bool isOK; 
QString text = QInputDialog::getText(NULL, "Input Dialog", 
                                                   "Please input your comment", 
                                                   QLineEdit::Normal, 
                                                   "your comment", 
                                                   &isOK); 
if(isOK) { 
       QMessageBox::information(NULL, "Information", 
                                           "Your comment is: <b>" + text + "</b>", 
                                           QMessageBox::Yes | QMessageBox::No, 
                                           QMessageBox::Yes); 
}

代碼比較簡單,使用 getText 函數(shù)就可以彈出一個(gè)可供用戶輸入的對話框:

http://wiki.jikexueyuan.com/project/learn-road-qt/images/33.png" alt="" />

下面來看一下這個(gè)函數(shù)的簽名:

static QString QInputDialog::getText ( QWidget * parent,
                                                      const QString & title,
                                                      const QString & label,
                                                      QLineEdit::EchoMode mode = QLineEdit::Normal,
                                                      const QString & text = QString(),
                                                      bool * ok = 0,
                                                      Qt::WindowFlags flags = 0 )

第一個(gè)參數(shù) parent,也就是那個(gè)熟悉的父組件的指針;第二個(gè)參數(shù) title 就是對話框的標(biāo)題;第三個(gè)參數(shù) label 是在輸入框上面的提示語句;第四個(gè)參數(shù) mode 用于指明這個(gè) QLineEdit 的輸入模式,取值范圍是 QLineEdit::EchoMode,默認(rèn)是 Normal,也就是正常顯示,你也可以聲明為 password,這樣就是密碼的輸入顯示了,具體請查閱 API;第五個(gè)參數(shù) text 是 QLineEdit 的默認(rèn)字符串;第六個(gè)參數(shù) ok 是可選的,如果非 NLL,則當(dāng)用戶按下對話框的 OK 按鈕時(shí),這個(gè) bool 變量會(huì)被置為 true,可以由這個(gè)去判斷用戶是按下的 OK 還是 Cancel,從而獲知這個(gè) text 是不是有意義;第七個(gè)參數(shù) flags 用于指定對話框的樣式。

雖然參數(shù)很多,但是每個(gè)參數(shù)的含義都比較明顯,大家只要參照 API 就可以知道了。

函數(shù)的返回值是 QString,也就是用戶在 QLineEdit 里面輸入的內(nèi)容。至于這個(gè)內(nèi)容有沒有意義,那就要看那個(gè) ok 參數(shù)是不是 true 了。

QInputDialog 不僅提供了獲取字符串的函數(shù),還有 getInteger,getDouble,getItem 三個(gè)類似的函數(shù),這里就不一一介紹。

本文出自 “豆子空間” 博客,請務(wù)必保留此出處 http://devbean.blog.51cto.com/448512/194031