• 8906阅读
  • 2回复

QScrollArea的scroll怎么不出来?滚动条 [复制链接]

上一主题 下一主题
离线iiiyyyhhhsss
 

只看楼主 倒序阅读 楼主  发表于: 2010-05-10

   scrollArea->setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
   scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAsNeeded);


而且它的子元素的大小已经超过它本身了,为什么滚动条还不出来?

要什么条件scroll才能出来?
离线抠涕
只看该作者 1楼 发表于: 2010-05-10
默认不用设就会出来的。

检查一下子元素是不是真的比他大了吧。

或者给子元素用layout, 自动撑大
离线iiiyyyhhhsss

只看该作者 2楼 发表于: 2010-05-10
我的问题在于,最后差了一句  :  scrollArea->show();

补上就出来了..

答案已经找到,按照下面设置就没有问题了,:  

QScrollArea *scrollArea = new QScrollArea();

//设置加载滚动条对象

scrollArea->setWidget(this);

//设置滚动条属性

//scrollArea->setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOn);

//scrollArea.setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOn);

//设置背景色,可取QPalette::Dark和 QPalette::Light

scrollArea->viewport()->setBackgroundRole(QPalette::Light);

//设置自动填充背景

scrollArea->viewport()->setAutoFillBackground(true);

//滚动条加载并显示

scrollArea->show();



===========

action_3 = new QAction(MainWindow);



ui->setupUi(this);

ui->action_3->setShortcut(Qt::CTRL + Qt::Key_W);

设置快捷键
快速回复
限100 字节
 
上一个 下一个