最近在做一个页面,页面的长度不是固定的,也不能确定高度是多少,如果高度超过窗口的高度就要有滚动条出现,实现滚屏的效果,就像我们平时在浏览器中浏览绝大多数网页一样,都可以下来滚动条来实现滚屏。
那么QT重能不能实现滚屏的效果呢,答案是肯定的。不过上网搜一下,有很多种方法,比如自己新建滚动条,然后连接上信号槽,当滚动条的位置发生变化时,就设置显示界面的位置来达到滚屏的效果。这样比较麻烦也比较容易出错。
仔细在Qt Designer 中,我们会发现QScrollArea这个控件,其实这就是qt已经实现好的带有滚动条的控件。
那么怎么使用呢?
1.在Qt designer中,拖出来一个Scroll Area 控件。然后scroll area 就会默认新建一个叫做scrollAreaWidgetContents的QWidget控件,这个QWidget控件就是要显示内容的控件。
我们只需要在scrollAreaWidgetContents上按照要求添加控件就可以了!
(当然,我们也可以将QWidget 控件提升为我们自定义的另外的类。效果一样的!)
搞定!