PyQt5通过.setPlainText将变量设置为Text-Edit小部件

时间:2018-01-04 13:10:51

标签: python pyqt5

我用python构建了一个密码生成器。它在IDLE中运行正常,但每当我将.py文件转换为.exe文件时,它会在没有安装python的机器上立即关闭。 所以我想建立一个GUI,以防止关闭。

我想在Text-Edit小部件中显示生成的密码,该密码保存在变量中。 这是存储它的方法的一部分。

# Conversion of list to string
        stringpw = ""
        for i in lst:
            stringpw = stringpw + str(i)

        # change positions
        def change_text(stringpw):
            total= []
            for wort in stringpw.split():
                w = list(wort)
                random.shuffle(w)
                total.append("".join(w))

            return " ".join(insgesamt)

        finalPassword = change_text(stringpw)

        return finalPassword

我把它翻译成英文,因为它是用其他语言编写的,以防代码中出现错误。但是原始代码运行正常没有任何问题。

我的问题是,它在Text-Edit小部件中没有显示finalPassword,当我运行它时(输出字段存在并且引用它的self.ui先前被实例化):

self.ui.output.setPlainText(finalPassword)

是否有可能显示此变量?通常情况下,您只能在括号中显示一个字符串。

1 个答案:

答案 0 :(得分:1)

您是否使用QPlainTextEdit打印密码或lineEdit? 如果是QPlainTextEdit那么你应该使用appendPlainText setPlainText {}进行{{1}}