本文主要是介绍Qt使用setColumnHidden()函数隐藏列后无法再次显示出来,解决方法,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
调用:setColumnHidden()后,紧接着调用resizeColumnsToContents(),但是这样会改变之前设置的列宽,所以要在写个函数保存之前设置的列宽,然后调用resizeColumnsToContents(),再恢复列宽。
例子:
................................,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,m_view->setColumnHidden(OPT_COLUMN,flag);
if(flag == false)
{saveColumn();m_table->resizeColumnToContents();restoreColumn();
}
........................................................................................
void XXXXXXX::saveColumn()
{for(int i = 0 ; i < m_table->columncount();i++){list.push_back(m_view->columnWidth(i));}
}
........................................................................................
void XXXXX::restoreColumn()
{for(int i =0; i< m_table->columnCount();i++){m_view->setColumnWidth(i,list.at(i));}
}
这篇关于Qt使用setColumnHidden()函数隐藏列后无法再次显示出来,解决方法的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!