当在QTableWidget
中循环为QTableWidgetItem
设置标志(setFlags
)导致性能问题时,通常是因为每次调用setFlags
时都触发了GUI的重绘
/*禁用信号发射,减少重绘,防止界面卡顿*/
ui->lstTestPoints->blockSignals(true);
for(int i=0;i<ui->lstTestPoints->rowCount();i++)
{
ui->lstTestPoints->item(i,0)->setFlags(Qt::ItemIsEnabled|Qt::ItemIsSelectable);
}
/*使用结束之后关闭*/
ui->lstTestPoints->blockSignals(false);
这样可以提高执行效率,防止界面卡顿