如何解决将列表中的项目字符串添加到 QListWidget
首先,我的用户界面是这样的:
好吧!我做了一个“代码生成器”。我有一个空白的 QListWidget,我想要代码。 这些代码将使用“创建”按钮制作。到目前为止,我一直在测试脚本,看到要打印在终端上的代码。现在,我想在 QListWidget 中看到它们。因此,当我点击按钮时,QListWidget中会出现一个新的代码。首先,代码以这种方式转到 Codes_list = []
:
class Ui_MainWindow_2_1(object):
def __init__(self):
self.Codes_list = []
def Code_maker(self):
import random
chars= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!$%&*#/\?[]{}-_"
for x in range(self.HowMany_SpinBox.value()):
password = ""
for y in range(0,10):
password_char = random.choice(chars)
password += password_char
print(password)
self.Codes_list.append(password)
def setupUi(self,MainWindow_2_1):
# Some code later...
self.CreateButton.clicked.connect(self.Code_maker)
例如,Codes_list
可以包含以下代码:["rdt5u\&/EQ","BJnV?zNOXn","TnRZEMjbd6","}?TF/hmTDF","y9D1-Cl-Hk"]
。现在,从这里开始,代码应该转移到 QListWidget...如何?
我的 QListWidget 脚本是这样的:
class Ui_MainWindow_2_1(object):
# Some code later...
def setupUi(self,MainWindow_2_1):
# Some code later...
self.Codes_listWidget = QtWidgets.QListWidget(self.background)
self.Codes_listWidget.setGeometry(QtCore.QRect(20,120,231,161))
self.Codes_listWidget.setStyleSheet("background-color: none;\nborder-radius: 10px;")
self.Codes_listWidget.setObjectName("Codes_listWidget")
item = QtWidgets.QListWidgetItem()
font = QtGui.QFont()
font.setFamily("Microsoft YaHei UI")
font.setWeight(50)
item.setFont(font)
self.Codes_listWidget.addItems(self.Codes_list)
我希望 QListWidget 在您单击“创建”按钮时准确更新。
Code_maker 上的密码将永远留在那里。
解决方法
我的问题在我的问题的评论中解决了!我在 self.Codes_listWidget.addItem(password)
之后添加 self.Codes_list.append(password)
。谢谢@musicamante!!!
最后的脚本是:
class Ui_MainWindow_2_1(object):
def __init__(self):
self.Codes_list = []
def Code_maker(self):
import random
chars= "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!$%&*#/\?[]{}-_"
for x in range(self.HowMany_SpinBox.value()):
password = ""
for y in range(0,10):
password_char = random.choice(chars)
password += password_char
print(password)
self.Codes_list.append(password)
self.Codes_listWidget.addItem(password)
def setupUi(self,MainWindow_2_1):
# Some code later...
self.CreateButton.clicked.connect(self.Code_maker)
我最后的 QListWidget 脚本是:
class Ui_MainWindow_2_1(object):
# Some code later...
def setupUi(self,MainWindow_2_1):
# Some code later...
self.Codes_listWidget = QtWidgets.QListWidget(self.background)
self.Codes_listWidget.setGeometry(QtCore.QRect(20,120,231,161))
self.Codes_listWidget.setStyleSheet("background-color: none;\nborder-radius: 10px;")
self.Codes_listWidget.setObjectName("Codes_listWidget")
item = QtWidgets.QListWidgetItem()
font = QtGui.QFont()
font.setFamily("Microsoft YaHei UI")
font.setWeight(50)
item.setFont(font)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。