0
点赞
收藏
分享

微信扫一扫

qtableView大量数据显示

在一些数据库的程序中,大量数据显示qtableView会出现卡顿现象,甚至程序崩溃。

处理方法:

首先,定义两个槽函数

//接受滚动条事件
void acceptHScrollValueChanged(int value);
void acceptVScrollValueChanged(int value);
这两个槽函数连接到tableView 的滚动条事件上

connect (ui->tableView->horizontalScrollBar(),SIGNAL(valueChanged(int)),this,SLOT(acceptHScrollValueChanged(int)));
connect (ui->tableView->verticalScrollBar(),SIGNAL(valueChanged(int)),this,SLOT(acceptVScrollValueChanged(int)));
然后是槽函数里面:根据滚动条的当前值来刷新要显示的数据。

void MainWindow::acceptVScrollValueChanged(int value)
{
for(int h = hValue; h < hValue + 15; h++)
{
for(int w = wValue; w <wValue + 15; w++)
{
deleteColumnItem(h, w);
}
}
hValue = value;
for(int h = hValue; h < hValue + 15; h++)
{
for(int w = wValue; w <wValue + 15; w++)
{
setColumnItem(h, w, QString("%0").arg (OriginalDate[h*strList.size () + w]));
}
}
}

运行结果:亲测60000*60000的数据非常流畅

qtableView大量数据显示_数据库

举报

相关推荐

0 条评论