| 8 | #include "ElaText.h" |
| 9 | #include "T_TableViewModel.h" |
| 10 | T_TableView::T_TableView(QWidget* parent) |
| 11 | : T_BasePage(parent) |
| 12 | { |
| 13 | // 预览窗口标题 |
| 14 | setWindowTitle("ElaTableView"); |
| 15 | |
| 16 | // 顶部元素 |
| 17 | createCustomWidget("表格视图被放置于此,可在此界面体验其效果并按需添加进项目中"); |
| 18 | |
| 19 | //ElaTableView |
| 20 | ElaText* tableText = new ElaText("ElaTableView", this); |
| 21 | tableText->setTextPixelSize(18); |
| 22 | _tableView = new ElaTableView(this); |
| 23 | // ElaScrollBar* tableViewFloatScrollBar = new ElaScrollBar(_tableView->verticalScrollBar(), _tableView); |
| 24 | // tableViewFloatScrollBar->setIsAnimation(true); |
| 25 | QFont tableHeaderFont = _tableView->horizontalHeader()->font(); |
| 26 | tableHeaderFont.setPixelSize(16); |
| 27 | _tableView->horizontalHeader()->setFont(tableHeaderFont); |
| 28 | _tableView->setModel(new T_TableViewModel(this)); |
| 29 | _tableView->setAlternatingRowColors(true); |
| 30 | _tableView->setIconSize(QSize(38, 38)); |
| 31 | _tableView->verticalHeader()->setHidden(true); |
| 32 | _tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive); |
| 33 | _tableView->setSelectionBehavior(QAbstractItemView::SelectRows); |
| 34 | _tableView->horizontalHeader()->setMinimumSectionSize(60); |
| 35 | _tableView->verticalHeader()->setMinimumSectionSize(46); |
| 36 | _tableView->setFixedHeight(450); |
| 37 | connect(_tableView, &ElaTableView::tableViewShow, this, [=]() { |
| 38 | _tableView->setColumnWidth(0, 60); |
| 39 | _tableView->setColumnWidth(1, 205); |
| 40 | _tableView->setColumnWidth(2, 170); |
| 41 | _tableView->setColumnWidth(3, 150); |
| 42 | _tableView->setColumnWidth(4, 60); |
| 43 | }); |
| 44 | QHBoxLayout* tableViewLayout = new QHBoxLayout(); |
| 45 | tableViewLayout->setContentsMargins(0, 0, 10, 0); |
| 46 | tableViewLayout->addWidget(_tableView); |
| 47 | |
| 48 | QWidget* centralWidget = new QWidget(this); |
| 49 | centralWidget->setWindowTitle("ElaView"); |
| 50 | QVBoxLayout* centerVLayout = new QVBoxLayout(centralWidget); |
| 51 | centerVLayout->setContentsMargins(0, 0, 0, 0); |
| 52 | centerVLayout->addWidget(tableText); |
| 53 | centerVLayout->addSpacing(10); |
| 54 | centerVLayout->addLayout(tableViewLayout); |
| 55 | centerVLayout->addStretch(); |
| 56 | addCentralWidget(centralWidget, true, false, 0); |
| 57 | } |
| 58 | |
| 59 | T_TableView::~T_TableView() |
| 60 | { |
nothing calls this directly
no test coverage detected