как получить текст из QListWidgetItem - PullRequest
1 голос
/ 16 февраля 2020

так что в основном я только начал изучать PyQt и хочу получить текст элемента в listWidget, но каждый раз, когда я пробую self.listWidget.currentItem (). Text (), он выдает ошибку. Почему?

import sys
from PyQt5.QtCore import pyqtSlot
from PyQt5.QtWidgets import QDialog, QApplication, QListWidget
from PyQt5.uic import loadUi
from PyQt5.QtWidgets import *

class MainPage(QDialog):
    def __init__(self):
        super(MainPage,self).__init__()
        loadUi("HomePage.ui",self)
        self.pushButton.clicked.connect(self.addToList)
        self.selectButton.clicked.connect(self.getText)



    def addToList(self):
        customername = self.plainTextEdit_16.toPlainText()
        self.listWidget.addItem(customername)



    def getText(self):
        item = self.listWidget.currentItem().text() ##error is here

        print(item)


app = QApplication(sys.argv)

widget = MainPage()
widget.show()

sys.exit(app.exec_())

1 Ответ

2 голосов
/ 16 февраля 2020

Если предположить, что addToList работает правильно, то единственной ошибкой является то, что элемент не выбран, поэтому currentItem вернет None. Решение состоит в том, чтобы проверить, что это Нет:

def getText(self):
    item = self.listWidget.currentItem()
    if item is not None:
        print(it.text())
...