Обнаружить щелчок и получить текст заголовка QTableWidget, как?

Я вижу, как определить щелчок в ячейке QTableWidget, наблюдая за сигналом cellClicked(int row, int column) (код ниже).

Я хотел бы сделать то же самое для ячеек горизонтального заголовка и получить текст выбранной ячейки заголовка. Как я могу это сделать?

// mainwindow.h
class MainWindow : public QMainWindow {
    Q_OBJECT
    QWidget widget;
    QVBoxLayout vLayout {&widget};
    QStringList headers {"asdca", "asdcad", "asdcadca"};
    QTableWidget table {5, headers.size()};
public:
    MainWindow(QWidget *parent = 0);
    ~MainWindow() {}
};

// mainwindow.cpp
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent) {
    setCentralWidget(&widget);
    vLayout.addWidget(&table);
    table.setHorizontalHeaderLabels(headers);
    connect(&table, &QTableWidget::clicked, []{
       qDebug() << "click!!" ;
    });
}

person KcFnMi    schedule 14.07.2016    source источник


Ответы (1)


Вы можете получить QHeaderView для себя QTableWidgetс методом horizontalHeader. QHeaderView есть сигнал sectionClicked. Вы можете использовать его для определения текста элемента заголовка.

person Kirill Chernikov    schedule 14.07.2016