進行IP驗證我正在PySide中編寫代碼,其中有一個「更改IP」按鈕。單擊按鈕時將出現一個對話框,其中包含文本框。我想驗證只接受IP地址的文本框。如何爲QtGui.QInputDialog.GetText()
我使用這個代碼:
QtGui.QInputDialog.getText(self, "Title", "Enter IP: ")
進行IP驗證我正在PySide中編寫代碼,其中有一個「更改IP」按鈕。單擊按鈕時將出現一個對話框,其中包含文本框。我想驗證只接受IP地址的文本框。如何爲QtGui.QInputDialog.GetText()
我使用這個代碼:
QtGui.QInputDialog.getText(self, "Title", "Enter IP: ")
AFAIR,QInputDialog.getText
不支持即時驗證,但如果你願意推出自己的對話框,你可以使用QRegExpValidator
1在互聯網上查找所需的正則表達式(例如,here)。 見,它看起來像
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$
爲IP4
rx = QRegExp("regular_expression_string_from_step_1")
3.創建QRegExpValidator
實例和將rx
對象傳遞給它的構造函數,如下所示:
my_validator = QRegExpValidator(rx)
my_line_edit.setValidator(my_validator)
就是這樣,現在my_line_edit
應拒絕非有效的IP不會忽略的條目。如果你不想這樣,你可以使用python自己的re moodule進行事後驗證,使用步驟1中的正則表達式。