python GUI庫圖形界面開發(fā)之PyQt5輸入對話框QInputDialog詳細使用方法與實例
QInputDialog控件是一個標準對話框,有一個文本框和兩個按鈕(ok和cancel)組成,當用戶單擊ok或enter鍵后,在父窗口可以收集通過QInputDialog控件輸入的信息,QInputDialog控件是QDialog標準對話框的一部分
在QInpuTDialog控件中可以輸入數(shù)字,字符串或列表中的選項,標簽用于提示必要的信息
QInputDialog類中常用的方法 方法 描述 getint() 從控件中獲得標準整數(shù)輸入 getDouble() 從控件中獲得標準浮點數(shù)輸入 getText() 從控件中獲得標準字符串的輸入 getItem() 從控件中獲得列表里的選項輸入 QInputDialog使用實例import sysfrom PyQt5.QtCore import *from PyQt5.QtWidgets import *from PyQt5.QtGui import *class InputDialogDemo(QWidget): def __init__(self,parent=None): super(InputDialogDemo, self).__init__(parent) #表單布局 layout=QFormLayout() #創(chuàng)建按鈕,當行文本框并建立按鈕點擊與槽函數(shù)的聯(lián)系,添加到布局中 self.btn1=QPushButton(’獲得列表里的選項’) self.btn1.clicked.connect(self.getItem) self.Le1=QLineEdit() layout.addRow(self.btn1,self.Le1) # 創(chuàng)建按鈕,當行文本框并建立按鈕點擊與槽函數(shù)的聯(lián)系,添加到布局中 self.btn2=QPushButton(’獲得字符串’) self.btn2.clicked.connect(self.getText) self.le2=QLineEdit() layout.addRow(self.btn2,self.le2) # 創(chuàng)建按鈕,當行文本框并建立按鈕點擊與槽函數(shù)的聯(lián)系,添加到布局中 self.btn3 = QPushButton(’獲得整數(shù)’) self.btn3.clicked.connect(self.getInt) self.le3 = QLineEdit() layout.addRow(self.btn3, self.le3) #設置主窗口的布局及標題 self.setLayout(layout) self.setWindowTitle(’Input Dialog例子’) def getItem(self): #創(chuàng)建元組并定義初始值 items=(’C’,’C++’,’C#’,’JAva’,’Python’) #獲取item輸入的值,以及ok鍵的點擊與否(True 或False) #QInputDialog.getItem(self,標題,文本,元組,元組默認index,是否允許更改) item,ok=QInputDialog.getItem(self,'select input dialog',’語言列表’,items,0,False) if ok and item: #滿足條件時,設置單行文本框的文本 self.Le1.setText(item) def getText(self): text,ok=QInputDialog.getText(self,’Text Input Dialog’,’輸入姓名:’) if ok: self.le2.setText(str(text)) def getInt(self): num,ok=QInputDialog.getInt(self,’Integer input dualog’,’輸入數(shù)字’) if ok: self.le3.setText(str(num))if __name__ == ’__main__’: app=QApplication(sys.argv) demo=InputDialogDemo() demo.show() sys.exit(app.exec_())
允許程序,顯示效果圖如下
在這個例子中,在QFormLayour布局管理器中放置了三個按妞和三個文本框,當單擊按鈕時,將彈出標準對話框,把按鈕的單擊信號與自定義的槽函數(shù)進行連接
self.btn1.clicked.connect(self.getItem)self.btn2.clicked.connect(self.getText)self.btn3.clicked.connect(self.getInt)
當調(diào)用QInputDialog.getItem()函數(shù)時,QInputDialog控件包含一個QComboBox控件和兩個按鈕,用戶從QComboBox中選擇一個選項后,允許用戶確認或取消操作
def getItem(self): items=(’C’,’C++’,’C#’,’JAva’,’Python’) item,ok=QInputDialog.getItem(self,'select input dialog',’語言列表’,items,0,False) if ok and item: #滿足條件時,設置單行文本框的文本 self.Le1.setText(item)
同理,當調(diào)用QInputDialog.getText()函數(shù)時,QInputDialog控件包含一個文本框和兩個按鈕,允許用戶輸入字符串
本文詳細講解了PyQt5輸入對話框QInputDialog詳細使用方法與實例,更多關于這方面的知識請查看下面的相關鏈接
相關文章:
1. Python PyQt5-圖形界面的美化操作2. 利用原生JS實現(xiàn)歡樂水果機小游戲3. JAMon(Java Application Monitor)備忘記4. python 編寫輸出到csv的操作5. js的一些潛在規(guī)則使用分析6. PHP swoole的process模塊創(chuàng)建和使用子進程操作示例7. 讓chatgpt將html中的圖片轉(zhuǎn)為base64方法示例8. 詳解python第三方庫的安裝、PyInstaller庫、random庫9. Python PyQt5中彈出子窗口解決子窗口一閃而過的問題10. 手把手教你用python發(fā)送短消息(基于阿里云平臺)
