PyQt5で作成したリストビューにある項目、値を取得したいです。
from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui,QtWidgets import sys class ListView(QtWidgets.QListView): def __init__(self, *args, **kwargs): super(ListView, self).__init__(*args, **kwargs) self.setDragEnabled(False) self.setAcceptDrops(True) self.setDropIndicatorShown(True) def clickCallback(self): QApplication.quit() app.exec_() return def clickCallback1(self): global model for row in range(self.Items): # index = model.index(row, 1) # item = model.data(index, QtCore.Qt.DisplayRole) print(row) return self.button1 = QPushButton('保存', self) self.button1.clicked.connect(clickCallback1) self.button1.move(200,300) self.button2 = QPushButton('終了', self) self.button2.clicked.connect(clickCallback) self.button2.move(100,300) def dragEnterEvent(self, event): if event.mimeData().hasUrls(): event.accept() else: super(ListView, self).dragEnterEvent(event) def dragMoveEvent(self, event): if event.mimeData().hasUrls(): event.accept() else: super(ListView, self).dragMoveEvent(event) q1=[] def dropEvent(self, event): global model if event.mimeData().hasUrls(): model = self.model() urls = event.mimeData().urls() for url in urls: filename = url.toLocalFile() print(filename) # q1.append(filename) item = QtGui.QStandardItem(filename) model.appendRow(item) print() event.accept() else: super(ListView, self).dropEvent(event) def main(): global app,ex,g1 g1=0 app = QtWidgets.QApplication(sys.argv) model = QtGui.QStandardItemModel() window = ListView() window.setGeometry(50, 100, 400, 400) window.setWindowFlags(QtCore.Qt.Window) window.setModel(model) window.show() print("gggg") sys.exit(app.exec_()) if __name__ == '__main__': main()
modelリストを見てもダメです。
ネットでヒットしないので、
リストビューにあるデータを保存ボタンを押すと、clickCallback1イベントで飛び、
リストビューにあるデータを取得するようにしたいです。
何卒、宜しくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。