|
5Qter豆
手头上有一块触摸屏,我需要对表格进行滑动设置,就是用手指划过表格,表格会自动滚动,就像手机滑动网页那样
用的是QT自带的滚动条代码
Scroller::grabGesture(ui->tableWidget2,QScroller:eftMouseButtonGesture);
QScrollerProperties properties2 = QScroller::scroller(ui->tableWidget2)->scrollerProperties();
QVariant overshootPolicy2 = QVariant::fromValue<QScrollerProperties::OvershootPolicy(QScrollerProperties::OvershootAlwaysOff);
properties2.setScrollMetric(QScrollerProperties::VerticalOvershootPolicy, overshootPolicy2);
QScroller::scroller(ui->tableWidget2)->setScrollerProperties(properties2);
也添加了滚动条以像素划分
ui->tableWidget2->setVerticalScrollMode(QAbstractItemView::ScrollPerPixel);//滚动条以像素划分
问题是,我在主界面添加的QTableWidget,小号QTableWidget滑动顺畅,不会卡顿,但界面大的QTableWidget滑动起来就会有卡顿的感觉。因为在电脑上测试的时候不论大小QTableWidget都没有卡顿现象,所以我一开始认为是板子的处理能力问题。但后面我用QDialog新建一个窗口,在窗口中添加QTableWidget(与主界面会发生卡顿的表格等大,且是在同一个程序中),新建QDialog中的QTableWidget滑动起来意外的没有卡顿现象。不管窗口是模态还是非模态都没有卡顿现象。虽然可以把主界面的表格用新窗口的形式显示出来,但我想知道这个卡顿是什么问题引发的,有没有解决的方法。谢谢。 |
|