简体   繁体   English

打印从qtable pyqt5 python中选择的数据

[英]Print Selected data from qtable pyqt5 python

I HAVE TRIED MANY BUILT FUNCTION LIKE:我已经尝试了许多内置功能,例如:

currentItem()
selectedItems()
 TO PRINT SELECTED DATA IN QTABLE OF PYQT5 IN PYTHON

WHEN EVER I USE THESE FUNCTION THEY ONLY PRINT THESE当我使用这些功能时,他们只会打印这些

import sys
from PyQt5.uic import loadUi
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QDialog, QApplication


class MainWindow(QDialog):
    def __init__(self):
        super(MainWindow, self).__init__()
        loadUi("tabletutorial.ui",self)
        self.tableWidget.setColumnWidth(0,250)
        self.tableWidget.setColumnWidth(1,100)
        self.tableWidget.setColumnWidth(2,350)
        self.loaddata()
        self.pushButton.clicked.connect(self.pri)

    def loaddata(self):
        people=[{"name":"John","age":45,"address":"New York"}, {"name":"Mark", "age":40,"address":"LA"},
                {"name":"George","age":30,"address":"London"}]
        row=0
        self.tableWidget.setRowCount(len(people))
        for person in people:
            self.tableWidget.setItem(row, 0, QtWidgets.QTableWidgetItem(person["name"]))
            self.tableWidget.setItem(row, 1, QtWidgets.QTableWidgetItem(str(person["age"])))
            self.tableWidget.setItem(row, 2, QtWidgets.QTableWidgetItem(person["address"]))
            row=row+1
            
    def pri(self):
         h=self.tableWidget.selectedItems()
         R=self.tableWidget.selectedIndexes()
         p=self.tableWidget.currentItem()
        #  j=self.tableWidget.Items()
         print(h)
         print(R)
         print(p)
        #  print(j)


# main
app = QApplication(sys.argv)
mainwindow = MainWindow()
widget = QtWidgets.QStackedWidget()
widget.addWidget(mainwindow)
widget.setFixedHeight(850)
widget.setFixedWidth(1120)
widget.show()
try:
    sys.exit(app.exec_())
except:
    print("Exiting")

out put::输出::

<PyQt5.QtWidgets.QTableWidgetItem object at 0x0000021DD56C9820> <PyQt5.QtWidgets.QTableWidgetItem 对象在 0x0000021DD56C9820>

[<PyQt5.QtWidgets.QTableWidgetItem object at 0x0000021DD56C9EE0>] [<PyQt5.QtWidgets.QTableWidgetItem 对象在 0x0000021DD56C9EE0>]

[<PyQt5.QtCore.QModelIndex object at 0x0000021DD556BB30>] [<PyQt5.QtCore.QModelIndex 对象在 0x0000021DD556BB30>]

<PyQt5.QtWidgets.QTableWidgetItem object at 0x0000021DD56C9EE0> <PyQt5.QtWidgets.QTableWidgetItem 对象在 0x0000021DD56C9EE0>

This is an example of how you can do this:这是您如何执行此操作的示例:

selected_items = self.tableWidget.selectedItems()
for item in selected_items:
    print(item.text())

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM