Files
GostGenerator/view/stickytableview_simple.h
T

35 lines
934 B
C++

#ifndef STICKYTABLEVIEW_SIMPLE_H
#define STICKYTABLEVIEW_SIMPLE_H
#include <QTableView>
#include <QHeaderView>
#include <QScrollBar>
#include <QPainter>
#include <QApplication>
class StickyTableViewSimple : public QTableView
{
Q_OBJECT
public:
explicit StickyTableViewSimple(QWidget *parent = nullptr);
// Установить количество липких столбцов
void setStickyColumns(int count);
// Получить количество липких столбцов
int stickyColumns() const { return m_stickyColumns; }
protected:
void paintEvent(QPaintEvent *event) override;
void scrollContentsBy(int dx, int dy) override;
void resizeEvent(QResizeEvent *event) override;
private:
void updateStickyColumnGeometry();
void paintStickyColumns(QPainter *painter);
int m_stickyColumns;
int m_stickyColumnWidth;
};
#endif // STICKYTABLEVIEW_SIMPLE_H