Предполагая, что list1
- это список строк, вы можете просто добавить их все сразу, используя метод addItems :
self.comboBox_2.clear()
self.comboBox_2.addItems(list1)
Обратите внимание, что вы, вероятно, используете QApplication.translate
неправильно в вашем примере.Если вы хотите сделать возможным перевод строк в list1
на другой язык, вы должны сделать это, когда вы создаете список и используете строковые литералы .
Например:
list1 = [
self.tr('First Item'),
self.tr('Second Item'),
self.tr('Third Item'),
]
Также обратите внимание, что функция _fromUtf8
действительно полезна только в том случае, если в вашем коде используются строковые литералы, содержащие не-ascii символы, в противном случае это в основномнет операции.
РЕДАКТИРОВАТЬ
Если ваш список содержит, скажем, наборы растровых изображений и текста, то вы можете использовать что-то вроде этого:
self.comboBox_2.clear()
for pixmap, text in list1:
self.comboBox_2.addItem(QIcon(pixmap), text)