Вы можете использовать QTableWidget.verticalHeaderItem()
с текущей строкой таблицы. Если все выделенные ячейки находятся в одной строке, вы можете сделать это (table
относится к QTableWidget).
row = table.currentRow()
label = table.verticalHeaderItem(row).text()
Или, если ячейки выбраны в нескольких строках:
rows = set(cell.row() for cell in table.selectedIndexes()) # set to remove duplicates, otherwise use a list
labels = [table.verticalHeaderItem(r).text() for r in rows]
В случае, если строка не содержит элемент вертикального заголовка, используйте метод text()
только после того, как вы проверили, что возвращаемый элемент не равен None.
headers = [table.verticalHeaderItem(r) for r in rows]
labels = [x.text() for x in headers if x is not None]
Редактировать: Это заголовки горизонтальные , а не вертикальные. В этом случае используйте взамен table.horizontalHeaderItem()
и получите столбцы ячеек.