Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
QTableWidgetItem收缩_Qt_Qtablewidget_Shrink_Qtablewidgetitem - Fatal编程技术网

QTableWidgetItem收缩

QTableWidgetItem收缩,qt,qtablewidget,shrink,qtablewidgetitem,Qt,Qtablewidget,Shrink,Qtablewidgetitem,我在使用QTableWidgetItem时遇到问题。 我通常像这样使用QTableWidget this->setItem(i, j, new QTableWidgetItem()); this->item(i, j)->setText(string); 我写的专栏很窄,只有20像素。我需要在其中写入2位数字,根据定义,我无法调整列的大小 问题是,一旦文本与列宽重叠,它就会完全消失,只会出现三个点(甚至没有)。 我可以抑制这种行为吗?我不介意是否会有1-2倍的

我在使用QTableWidgetItem时遇到问题。 我通常像这样使用QTableWidget

    this->setItem(i, j, new QTableWidgetItem());
    this->item(i, j)->setText(string);
我写的专栏很窄,只有20像素。我需要在其中写入2位数字,根据定义,我无法调整列的大小

问题是,一旦文本与列宽重叠,它就会完全消失,只会出现三个点(甚至没有)。 我可以抑制这种行为吗?我不介意是否会有1-2倍的重叠/剪辑,但我绝对不喜欢文字消失

谢谢你的帮助

编辑:


好吧,经过几次尝试,我必须说TextElide思想是有效的,然而,现在我面临另一个问题。有时,当QTableWiddgetItem中有更多行时,底部的行消失,只有顶部的行可见。为什么会发生这种情况,有什么建议吗

编辑2:

看起来是这样的……请注意,图像之间的唯一区别是字体更大。单元格的高度绝对足以容纳所有文本。
http://www.stud.fit.vutbr.cz/~xnavra23/TWIbug2.png

您是否尝试过设置项目的大小点?
请参见查看属性
this->setTextElideMode(Qt::ElideNone)
将删除点。

我这样做了,但没有成功。谢谢你的建议,非常感谢。这真的很有帮助!好吧,经过几次尝试,我必须说TextElide think有效,然而,现在我面临另一个问题。有时,当QTableWiddgetItem中有更多行时,底部行消失,只有顶部行可见。有什么建议为什么会这样吗?这与尺寸有关。resizeRowToContents()应该可以修复它,但速度非常慢。否则,请在QHeaderView上设置适当的ResizeMode。嗨,我确实使用了它…我的代码类似于(第一行的单元格)cell.setText(“1\n2\n3\n”);此->重新设置零内容(0)单元格的高度足以容纳所有的文本行(我甚至尝试将cellWidgetItem背景着色以查看它们是否与网格匹配),但由于某些原因,在某些情况下会忽略某些行…我将尝试在我不知道的地方发布屏幕截图。也许它与宽度有关,因为它似乎只发生在两位数的数字上。你应该对此有新的想法。