qt c++ QTableWidget设置item的文字内容太长时不被忽略
时间: 2024-09-24 08:24:59 浏览: 148
QTableWidget Item文本显示不全(文本溢出)
3星 · 编辑精心推荐
在Qt C++中,如果你想要在QTableWidget中的单元格(item)文字内容过长时不被忽略,可以使用`setWordWrap()`函数。这个函数允许文本自动换行,以便适应单元格的大小。你可以这样做:
```cpp
QTableWidgetItem *item = new QTableWidgetItem("这是一个非常非常非常长的字符串");
// 如果你想让整个表格内的文字都自动换行
tableWidget->setItem(i, j, item);
item->setFlags(Qt::ItemIsSelectable | Qt::ItemIsUserCheckable); // 设置flag以便编辑
item->setWordWrap(true);
// 或者针对单个单元格
tableWidget->setItemDelegate(new QStyledItemDelegate()); // 默认样式代理支持word wrap
tableWidget->setItemDelegateForColumn(columnIndex, new QStyledItemDelegate());
tableWidget->setItemDelegateForColumn(columnIndex, new QAbstractItemDelegate {..., setWordWrap(true)}; // 自定义样式代理
```
这样,如果单元格的内容确实很长,它会自动换行显示,而不会被截断。
阅读全文