PyQt5 Qtablewidget row header 값 리턴해주는 함수있나요?

조회수 1237회

이미지

저 부분을 클릭할때 저 1를 반환해주는 함수가 있나요?

  • 이미지 어떻게 올려야되요? lexky1234 2019.12.6 14:02

1 답변

  • verticalHeader 부분 참고하세요.

    import sys
    from PyQt5.QtCore import pyqtSlot, Qt
    from PyQt5.QtWidgets import *
    
    
    class MyWindow(QMainWindow):
        def __init__(self):
            super().__init__()
            self.setupUI()
    
        def setupUI(self):
            self.setGeometry(800, 200, 300, 300)
    
            self.tableWidget = QTableWidget(self)
            self.tableWidget.resize(290, 290)
            self.tableWidget.setRowCount(2)
            self.tableWidget.setColumnCount(2)
            self.setTableWidgetData()
    
            self.tableWidget.cellClicked.connect(self.mycell_clicked)
            self.tableWidget.verticalHeader().sectionClicked.connect(self.myheader_clicked)
    
        def setTableWidgetData(self):
            self.tableWidget.setHorizontalHeaderLabels(["aaaa", "bbbb"])
    
            self.tableWidget.setItem(0, 0, QTableWidgetItem("(0,0)"))
            self.tableWidget.setItem(0, 1, QTableWidgetItem("(0,1)"))
            self.tableWidget.setItem(1, 0, QTableWidgetItem("(1,0)"))
            self.tableWidget.setItem(1, 1, QTableWidgetItem("(1,1)"))
    
        @pyqtSlot(int, int)
        def mycell_clicked(self, row, col):
            QMessageBox.information(self, '{}, {}'.format(row, col), '{}, {}'.format(row, col))
    
        @pyqtSlot(int)
        def myheader_clicked(self, logicalIndex):
            QMessageBox.information(self, str(logicalIndex + 1), str(logicalIndex + 1))
    
    if __name__ == "__main__":
        app = QApplication(sys.argv)
        mywindow = MyWindow()
        mywindow.show()
        app.exec_()
    

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)