逛奔的蜗牛

我不聪明,但我会很努力

   ::  :: 新随笔 ::  ::  :: 管理 ::
如果一个QTableView使用setSpan合并后,数据更新后,还要继续使用setSpan再次合并(主要是要对全表格进行重新的单元格合并,已经合并过的地方行列又要重新进行新的合并,因为数据已经更新),这时不能直接使用setSpan,而是要先把QTableView的row还原为原来没有合并行列的情形,再次使用setSpan,否则显示很可能就会发生错误:

    if (model != 0) {

        // 恢复QTableView的为未合并前的样子

        for (int i = 0; i < model->rowCount(); ++i) {

            ui->tableView->setSpan(i, 1, 1, 1);

            ui->tableView->setSpan(i, 10, 1, 1);

        }

    }


    // 合并单元格

    if (currentRow - firstRow != 1) {

        ui->tableView->setSpan(firstRow, 1, rowSpan, 1);

        ui->tableView->setSpan(firstRow, 10, rowSpan, 1);

    }

 

posted on 2009-12-11 00:39 逛奔的蜗牛 阅读(5327) 评论(0)  编辑 收藏 引用 所属分类: Qt

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理