我有一個QGraphicsView「垂直滾動條策略」ScrollBarAlwaysOff「。問題是,當我調整視圖的大小(通過QSplitter或僅調整窗口大小)時,視圖右側會出現一個空白區域。這裏有一個例子紅色背景和黑色QGraphicsRectItem:QGraphicsView滾動條策略不按預期工作
#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();
}
這裏的問題是什麼樣子:
我該如何解決這個問題?
編輯:點擊這裏,使畫面有點大:http://i.stack.imgur.com/HeWHJ.png
不幸的是,我不能在PyQt中重現這種行爲。使用PyQt 4.9.1和Qt 4.8.1。對於我來說,當它小於QGraphicsItem的大小時,我會得到恆定的黑色。顯然,當它大於QGraphicItem的大小時,會顯示紅色 – jdi 2012-04-16 19:48:19
@jdi我感謝您檢查它。我正在使用4.8.0。我會更新到4.8.1,看看是否修復它。 – Anthony 2012-04-16 21:38:05