0

我想创建一个简单的 UI,以便用户可以输入整数和字符串参数。我希望使用像 QInputDialog() 这样简单的东西,但据我所知,它只适用于 1 个参数。

inputDialog = QtGui.QInputDialog()
myInt, ok =  inputDialog.getInt(inputDialog, 'Enter Params', 'Int', 1)

有没有一种简单的方法来做类似的事情:

inputDialog = QtGui.QInputDialog()
myInt, myString, ok =  inputDialog.getInt(inputDialog, 'Enter Params', 'Int', 1), inputDialog.getText(inputDialog, 'Enter Params', 'Text', 1)

我开始研究 PyQt,但对于如此基本的东西来说,这似乎有点过头了。

任何帮助,将不胜感激。

4

1 回答 1

0

没有包含多个字段的标准 Qt 对话框。您可以做的是依次使用两个对话框,或者让用户在一个字段中输入两个值,然后将它们拆分到您的代码中。例如:

inputDialog = QtGui.QInputDialog()
myText, ok  = inputDialog.getText(inputDialog, 
              'Enter number, a space, then text', 'Data', '')
if ok:
    myInt, _, myText = myText.partition(" ")
    try:
        myInt = int(myInt)
    except ValueError:
        myInt = 0

但是,从用户体验的角度来看,两者都不是很好。

于 2013-07-31T22:00:28.800 回答