0

我有一个带有 QLayoutForm 页面的 QWizard。LayoutForm 中有一个编辑框,您可以在其中键入描述,但不能按回车键换行,因为这会导致页面前进。目前我正在用一个初始化事件覆盖默认的 QWizard,该事件也包括这个

class MapWizard (QtGui.QWizard):
    def __init__(self, parent=None):
        super(MapWizard, self).__init__()
        self.setOption(QtGui.QWizard.NoDefaultButton, True)
        self.addPage(IntroPage())
        self.addPage(SettingsPage())
        self.setWindowTitle("Map Wizard")
        self.show()

如果它有任何帮助,这里是描述框的类

class DescriptionBox (QtGui.QLineEdit):
def __init__ (self, parent=None):
    super(DescriptionBox, self).__init__()
    self.setAlignment(QtCore.Qt.AlignTop)
def sizeHint(self):
    return(QtCore.QSize(200,200))

但是 NoDefaultButton 似乎没有做任何事情。它不会导致错误,但它仍然无法解决我默认选择“Final”和“Next”按钮的问题,即使您将注意力集中在 lineEditText 框中,它们也会被聚焦。

我正在使用 PyQt 版本 4 (Windows),但来自 Qt 的解决方案应该与我需要的非常相似:使其可以在 QWizard 中按 Enter 键而无需前进

4

1 回答 1

0

如果您使用 QLineEdit,则 Enter 被解释为推进向导。改用 QTextEdit。

于 2012-07-28T17:21:21.877 回答