Russian Qt Forum

Qt => Вопросы новичков => Тема начата: nvek от Июнь 29, 2017, 14:59



Название: setHeaderData() не работает
Отправлено: nvek от Июнь 29, 2017, 14:59
создал свой видгет
который объединил в себе 2 таблвьюшки
Код:
StatCompareView::StatCompareView(QObject */*parent*/)
{
tbMatching = new QTableView;
tbProperty = new QTableView;

tbProperty->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
tbProperty->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);

tbMatching->verticalHeader()->setSectionResizeMode(QHeaderView::ResizeToContents);
tbMatching->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);


tbMatching->setSelectionBehavior(QAbstractItemView::SelectRows);
tbMatching->setSelectionBehavior(QAbstractItemView::SelectRows);

tbMatching->verticalHeader()->hide();
tbProperty->verticalHeader()->hide();

tbMatching->resizeColumnsToContents();
tbProperty->resizeColumnsToContents();

splitter = new QSplitter(Qt::Horizontal);
splitter->addWidget(tbMatching);
splitter->addWidget(tbProperty);

///dockMatch = new QDockWidget(Resource::DOCK_MATCHING);
///dockMatch->setAllowedAreas(Qt::AllDockWidgetAreas);
///dockMatch->setWidget(splitter);
setWindowTitle(Resource::DOCK_MATCHING);
setAllowedAreas(Qt::AllDockWidgetAreas);
setWidget(splitter);
}

унаследованный от доквиджета, чтобы на главную форму просто воткнуть было
в мейнформ:
Код:
statCompareView = new StatCompareView(this);
addDockWidget(Qt::BottomDockWidgetArea, statCompareView);

дальше создается контейнер, контролы. это не суть.
проблема в том, что когда я классу, унаследованному от абстракттэблмодель задаю setheaderdata
ничего не отображается

Код:
comparableModel = new ComparableModel(); //контейнер данных

comparableCtrl = new ComparableCtrl(comparableModel); унаследованные от абстракттаблмодель
comparablePropCtrl = new ComparablePropCtrl(comparableModel);

comparableCtrl->setHeaderData(0, Qt::Horizontal, "asdasdsad");
statCompareView->setModel(comparableCtrl, comparablePropCtrl);

даже если в самих классах ctrl header не задается


Название: Re: setHeaderData() не работает
Отправлено: nvek от Июнь 30, 2017, 07:45
Вообщем все решилось тем, что пришлось переопределить в классах headerdata  ;D ;D ;D