brixton
9th December 2010, 18:22
I'm having trouble understanding why I need to call QTableView::invalidate() before I can hide columns in the view.
Here m_proxy is a subclassed QSortFilterProxyModel with a reimplemented filterAcceptsRow and m_view is just QTableView.
m_view->setColumnHidden(5, true);
qDebug() << m_view->isColumnHidden(5);
m_proxy->invalidate();
m_view->setColumnHidden(5, true);
qDebug() << m_view->isColumnHidden(5);
The above code returns:
false
true
I am actually having trouble hiding columns elsewhere in my code which I how I stumbled on this curiosity.
Thanks for any explanations!
Here m_proxy is a subclassed QSortFilterProxyModel with a reimplemented filterAcceptsRow and m_view is just QTableView.
m_view->setColumnHidden(5, true);
qDebug() << m_view->isColumnHidden(5);
m_proxy->invalidate();
m_view->setColumnHidden(5, true);
qDebug() << m_view->isColumnHidden(5);
The above code returns:
false
true
I am actually having trouble hiding columns elsewhere in my code which I how I stumbled on this curiosity.
Thanks for any explanations!