【问题标题】:PyQt: How can I change the texts of my QInputDialog buttons?PyQt:如何更改 QInputDialog 按钮的文本?
【发布时间】:2013-04-06 10:07:38
【问题描述】:

我想更改QInputDialog 框中按钮(确定、取消)的文本。 我怎样才能做到这一点?

我想使用 Python 的 gettext 进行翻译,而不是 Qt Linguist。

# Set maximum file size
def maximumFilesize(self):

    # Get user input
    maxsize, ok = QtGui.QInputDialog.getInt(self, "Maximum file size",
        "Enter maximum file size in bytes:", self.maxsize, 1, 1073741824)

    # If OK was clicked...
    if ok:
        if maxsize <= 0:
            message = "Maximum file size cannot be less than 1."
                QtGui.QMessageBox.critical(self, "Error", message)
                return False

        # Set new maximum file size
        self.maxsize = maxsize

【问题讨论】:

    标签: python button dialog pyqt


    【解决方案1】:

    QInputDialog 本身包含方法setOkButtonTextsetCancelButtonText,但是,您使用的静态方法gitInt 创建了一个QInputDialog 对象,该对象仅在getInt 方法内部可见,不可访问给你。

    我建议创建您自己的InputIntegerDialog(QtGui.QInputDialog),您必须在其上手动添加一个 spinBox 并设置其属性。然后,您将能够更改两个按钮上的文本,因为对话框对象在您的控制之下,而不是在 PyQt 中的某个位置创建。

    顺便说一句,如果您只想翻译标准按钮,您可能希望看到this question

    【讨论】:

    • 我想我会学习PyQt的翻译系统。不过谢谢你的回答=)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-11
    • 1970-01-01
    • 1970-01-01
    • 2013-02-11
    • 1970-01-01
    相关资源
    最近更新 更多