我有一个QPrintPreviewWidget
,我会根据用户输入以编程方式更新其内容。这样做的问题是滚动条保持原样,而我需要它回到顶部。
我尝试使用scroll
函数,但函数非常大,但没有做任何事情。有什么建议吗?
修改
以下是Qt Creator中对话框的结构:
然后我使用以下代码将QPrintPreviewWidget
添加到previewWidgetContainter
布局:
previewWidget_ = new QPrintPreviewWidget(printer_, this);
previewWidget_->fitToWidth();
ui->previewWidgetContainter->addWidget(previewWidget_);
修改
我遵循@tmpearce的建议,但那不起作用。在showEvent
我设置了当前页面但它没有任何效果。我的代码是这样的:
qDebug() << "Before" << previewWidget.currentPage();
previewWidget.setCurrentPage(0);
qDebug() << "After" << previewWidget.currentPage();
这个的输出总是这样:
Before 15
After 15
我也尝试在其他各个地方设置页面,但结果总是一样的。这看起来像QPrintPreviewWidget
中的一个错误,所以我现在要放弃了。无论如何,谢谢你的建议。
答案 0 :(得分:0)
在不了解您的代码细节的情况下,我的建议是明确调用this slot: QPrintPreviewWidget::setCurrentPage(int)
更改小部件的内容后。