QTableView有四个关于自动拉伸的函数:

void resizeColumnToContents(int column);

void resizeColumnsToContens();

void resizeRowToContents(int row);

void resizeRowsToContens();

这个四个函数分别是设置指定列、所有列、指定行、所有行根据内容来扩产表格大小。

现在的项目有两个界面,一个是普通的客户端,两一个是以插件的形式嵌入到浏览器中。

在客户端界面下,这四个函数是可以正常使用的。但是在浏览器中是无效的。

仔细看了看这个函数的实现代码,发现四个函数有个共性:都调用了

QHeaderView::setResizeMode( ResizeMode mode)

ResizeMode 有如下几个属性:

QHeaderView::Interactive             默认的属性,用户可以进行拉伸

QHeaderView::Fixed                    固定

QHeaderView::Stretch                 拉伸

QHeaderView::ResizeToContents  根据内容调整

调用这个函数就能完美的解决这个问题。