나는 세 가지 항목PyQt는 QListWidgetItem 특정 항목 발사는 QTDesigner를 사용하여 특정 기능
바나나
오렌지
내 목표는, 이러한 옵션 중 하나입니다
애플
를 포함하는 간단한 QListWidge했다 특정 기능을 시작합니다. 웬일인지 나는 이것을 이해할 수 없다. 그리고 나는 나의 구글 검색 내에서 아무것도 찾을 수 없다. 나는 pyQT에 익숙하지 않기 때문에 잘못된 용어를 사용하고있을 수도 있습니다.QT Designer를 사용하면 신호 및 슬롯을 설정할 수 있지만 효과는 QListWidget 내의 모든 단일 항목에 대한 것이므로 구체적이지 않습니다. 여기
내가QtCore.QObject.connect과 관련하고있는 코드 (self.listWidget, QtCore.SIGNAL (_fromUtf8 ("itemClicked (QListWidgetItem *)")), MainWindow.close)
입니다QListWidgetItem이 선택되면 해당 코드가 주 창을 닫습니다. "사과"가 선택되었을 때만 닫으라고합니다. 나는 바나나와 오렌지가 다른 것을하기를 바란다.
온라인에서 찾은 모든 예제와 마찬가지로 항목 A와 항목 B를 수행하려면 주소 지정이되지 않습니다. 모든 항목이 동일한 항목을 처리하는 일반 샘플을 사용합니다.
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'untitled.ui'
#
# Created by: PyQt4 UI code generator 4.11.4
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGuii
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(800, 600)
self.centralwidget = QtGui.QWidget(MainWindow)
self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
self.listWidget = QtGui.QListWidget(self.centralwidget)
self.listWidget.setGeometry(QtCore.QRect(50, 60, 256, 241))
self.listWidget.setObjectName(_fromUtf8("listWidget"))
item = QtGui.QListWidgetItem()
self.listWidget.addItem(item)
item = QtGui.QListWidgetItem()
self.listWidget.addItem(item)
item = QtGui.QListWidgetItem()
self.listWidget.addItem(item)
MainWindow.setCentralWidget(self.centralwidget)
self.menubar = QtGui.QMenuBar(MainWindow)
self.menubar.setGeometry(QtCore.QRect(0, 0, 800, 21))
self.menubar.setObjectName(_fromUtf8("menubar"))
MainWindow.setMenuBar(self.menubar)
self.statusbar = QtGui.QStatusBar(MainWindow)
self.statusbar.setObjectName(_fromUtf8("statusbar"))
MainWindow.setStatusBar(self.statusbar)
self.retranslateUi(MainWindow)
QtCore.QObject.connect(self.listWidget, QtCore.SIGNAL(_fromUtf8("itemClicked(QListWidgetItem*)")), MainWindow.close)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow", None))
__sortingEnabled = self.listWidget.isSortingEnabled()
self.listWidget.setSortingEnabled(False)
item = self.listWidget.item(0)
item.setText(_translate("MainWindow", "apple", None))
item = self.listWidget.item(1)
item.setText(_translate("MainWindow", "banana", None))
item = self.listWidget.item(2)
item.setText(_translate("MainWindow", "orange", None))
self.listWidget.setSortingEnabled(__sortingEnabled)
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
MainWindow = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())