初识QTableWidget
来源:互联网 发布:学会了单片机再学plc 编辑:程序博客网 时间:2024/06/10 03:06
QT帮助文档关于QTableWidget的说明如下:
The QTableWidget class provides an item-based table view with a default model.
Table widgets provide standard table display facilities for applications. The items in a QTableWidget are provided by QTableWidgetItem.
If you want a table that uses your own data model you should use QTableView rather than this class.
翻译过来就是:“ QtableWidget 提供了基于 Item 的可视化表格。表格控件为应用程序提供了标准的表格显示能力。QTableWidget 中的Items由 QTableWidgetItem 来提供。如果想使用自己的数据模式,请使用 QTableView 而不是 QTableWidget 。”(注:QtableWidget是继承于QtableView的。)
对于“QTableWidget 中的 Items 由 QTableWidgetItem 来提供”这句话,这里给出更详细的说明。
QTableWidget 在结构上有横向和列向两个表头构成,内部是单元格,单元格内部可由 Item 或 Widget 填充:
可以使用 void QTableWidget::setVerticalHeaderLabels(const QStringList & labels) 或 void QTableWidget::setHorizontalHeaderLabels(const QStringList & labels) 来设置表头,示例如下:
QStringList header;
header<<"C1"<<"C2";
TableWidget->setHorizontalHeaderLabels(header);
单元格中的 Item 或 Widget,在使用后一定要释放,否则会大量占用内存。下面介绍向单元格添加/删除 Item 或 Widget 的方法。
使用 void QTableWidget::setCellWidget(int row, int column, QWidget * widget) 可以向指定单元格中添加(row 和 column 是单元格的行列坐标,以下不再赘述) Widget,如:
setCellWidget(index, new QLineEdit);
使用 void QTableWidget::removeCellWidget(int row, int column) 可以删除指定单元格内的 Widget。
使用 void QTableWidget::setItem(int row, int column, QTableWidgetItem * item) 可以向指定单元格中添加 Item,如:
ui->TableWidget->setItem(row,column , new QTableWidgetItem(String));
使用 QTableWidgetItem * QTableWidget::item(int row, int column) const 获得指定单元格内的 Item 指针,如果该单元格中没有 Item 则返回数字“0”。
使用 delete 删除 Item,如:
delete ui->TableWidget->item(row, column);
如果 QTableWidget 的某个单元格中的内容为空,则有两种可能情况:1.该单元格中没有 Item 或 Widget;2.该单元格中的 Item 或 Widget 的内容为空。
因此,如果要判断某个单元格内容是否为空,应先判断是否有 Item,示例代码如下:
if(0!=ui-TableWidget->item(row,column))
{
if(ui->TableWidget->item(row,column)->text().isEmpty())
{
...
}
}
else
{
...
}
0 0
- 初识QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTableWidget
- QTablewidget
- QTableWidget
- QTableWidget--41
- QListWidget & QTableWidget
- QTableWidget&&QTableView
- 定制QTableWidget
- Qt QTableWidget
- 网络调试助手 工具
- Connected to the target VM,address:'localhost:9120',transport:'socket'
- SAP中修改Z Report时,开发系统和程序的初始系统不一致的问题
- linux 下 java环境变量设置
- Flex4 点击弹出菜单示例
- 初识QTableWidget
- rebol-万年历
- springMVC中的redirect和forward跳转
- 413 Request Entity Too Large
- BeagleBone Black——AM335X——中断控制
- Lua math 库
- 添加压缩功能的完全可控件IP*Works! Zip
- Effective C++:条款23:宁以non-member、non-friend替换member函数
- CCTMXTiledMap 说明