我知道这是一个非常具体的 C++ 和 Qt 相关问题,但也许有人可以帮助我,无论如何......
请参阅下面的代码:我想在滚动区域内显示图像。滚动区域的视口应具有定义的初始大小。这意味着,如果图像的大小大于视口的初始大小,则滚动条将可见,否则不可见。
// create label for displaying an image
QImage image( ":/test.png" );
QLabel *label = new QLabel( this );
label->setPixmap( image.toPixmap() );
// put label into scroll area
QScollArea *area = new QScrollArea( this );
area->setWidget( label );
// set the initial size of the view port
// NOTE: This is what I'd like to do, but this method does not exist :(
area->setViewPortSize( QSize( 300, 300 ) );
应该可以调整整个应用程序的大小,以便视口将获得不同于初始大小的大小。
不幸的是,我无法找到如何设置视口的大小。Qt 的布局机制似乎为视口设置了默认大小,但到目前为止我还无法更改它。设置新尺寸
area->setMinimumSize( QSize( 300, 300 ) );
实际上将设置所需的大小,但随后滚动区域失去了将大小调整为小于 300x300 的大小的能力。
有任何想法吗?