Qt QScrollArea 不显示滚动条 不滚动

使用QScrollArea时,发现添加的控件超出QScrollArea 并没有显示,且没有滚动条效果
原因是
scrollArea指的是scrollArea控件本身的大小,肉眼能看到的外形尺寸。
scrollAreaWidgetContents指的是scrollArea控件内部的显示区域,里面可以放很多很多很多东西,当东西多时,要设置显示区域的高度。
只有当scrollAreaWidgetContents显示的内容区域 大于 scrollArea的时候,才会出现滚动条。

当内容较多时,要及时修改scrollAreaWidgetContents的高度,当高度够大时,会出现滚动条。
Qt QScrollArea 不显示滚动条 不滚动_第1张图片

 QSize nsize = ui->scrollAreaWidgetContents_2->size();
 ui->scrollAreaWidgetContents_2->resize(nsize.rwidth(), nsize.height() * nwidth);//内容多时,需要修改高度

其实,scrollAreaWidgetContents的高度越大越好,如果不确定具体设置多少,建议至少设置屏幕分辨率的一半以上为好。

你可能感兴趣的:(qt,开发语言)