gpt4 book ai didi

qt - QGraphicsView 滚动条策略未按预期工作

转载 作者:行者123 更新时间:2023-12-01 05:33:20 26 4
gpt4 key购买 nike

我有一个带有“ScrollBarAlwaysOff”垂直滚动条策略的 QGraphicsView。问题是,当我调整 View 的大小(通过 QSplitter 或仅通过调整窗口的大小)时, View 右侧经常会出现一个空白区域。这是一个带有红色背景和黑色 QGraphicsRectItem 的示例:

#include <QtGui>

class MainWindow : public QMainWindow
{
public:
MainWindow()
{
QGraphicsScene *scene = new QGraphicsScene(this);
QRectF rect(-100, -100, 200, 200);
QGraphicsRectItem *rectItem = new QGraphicsRectItem(rect);
rectItem->setBrush(QBrush(Qt::black));
scene->addItem(rectItem);
scene->setSceneRect(rect); //commenting this out doesn't make a difference

QGraphicsView *view = new QGraphicsView(this);
view->setBackgroundBrush(QBrush(Qt::red));
view->setTransformationAnchor(QGraphicsView::AnchorViewCenter);
view->setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
view->setScene(scene);

setCentralWidget(view);
}
};

int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}

这是问题的样子:

image of the problem

我怎样才能解决这个问题?

编辑:单击此处将图片放大一点: http://i.stack.imgur.com/HeWHJ.png

最佳答案

我试了一下,发现如果将矩形更改为 (0, 0, 300, 300),它会按预期工作。好像QGraphicsView处理带有负左上角场景矩形的滚动条更新时出现问题。您应该向 Qt 提交错误报告。

关于qt - QGraphicsView 滚动条策略未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10179120/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com