c++ - QTableWidget中如何动态分配单元格

标签 c++ qt user-interface dynamic qtablewidget

我是一名学生程序员,我正在使用 Qt 为我公司的一款产品构建 GUI。本质上,这个 GUI 将读取某些文件并将数据提供给一个表格供用户编辑。我知道如何静态构造 QTableWidget。在这种情况下,我使用了以下内容:

 for(int x=0; x < ui->tableWidgetInjectionLocations->rowCount(); x++)
    {
        for(int y=0; y < ui->tableWidgetInjectionLocations->columnCount(); y++)
        {
            ui->tableWidgetInjectionLocations->setItem(x,y, qTableWidgetItemInjection);
        }
    }

问题是这种方式会创建静态或固定数量的单元格,我希望这些单元格是基于用户交互构建的。也许当用户填写最后一行中的任何单元格以填充新单元格时,或者当用户向下滚动时......我离题了,我无法在 Qt Documentation 中找到有关如何处理此问题的任何文档。 .也许它的作者阻止了或者我遗漏了一些明显的东西,但任何帮助都会很棒。感谢您阅读并提前感谢您的帮助。

最佳答案

要添加一行,只需在您的QTableWidget::model() 上执行QAbstractItemModel::insertRow
QTableWidget 会自动调整。

ui->tableWidgetInjectionLocations->model()->insertRow(ui->tableWidgetInjectionLocations->model()->rowCount());

在最后一行之后添加一行。

有很多方法可以触发追加,你必须更精确地确定你想要什么......

关于c++ - QTableWidget中如何动态分配单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9669627/

相关文章:

c++ - 尝试将矩阵与常量重载运算符相乘两次?

c++ - 将重载指针传递给成员函数信号作为 QObject::connect 的参数

c - 为什么要在 snprintf 的第二个参数中添加 1 或 2?

c++ - 添加/EHa 到使用 Microsoft Visual C++ 编译器的 QtCreator

java - 用 Java 生成 jLabel 代码

c++ - 循环整数范围的最简洁方法

php - 关于 C++ 的一些错误

c++ - 多重定义... | C++

Java Swing 应用程序消息对话框帮助

r - 像 Paint 一样在 R 上手动绘制曲线