技术标签: qt
you messed up the stack of items. The idea of having scrollable area is like this:
QDialog)QScrollArea) of fixed sizeQWidget) of some size, where usually only part of it is visible (it's supposed to be bigger than scrollarea)QPushButton here)代码如***意,没有布局,没法正确显示。
int
main( int _argc, char** _argv )
{
QApplication app( _argc, _argv );
QDialog * dlg = new QDialog();
dlg->setGeometry( 100, 100, 260, 260);
QScrollArea *scrollArea = new QScrollArea( dlg );
scrollArea->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOn );
scrollArea->setWidgetResizable( true );
scrollArea->setGeometry( 10, 10, 200, 200 );
QWidget *widget = new QWidget();
scrollArea->setWidget( widget );
QVBoxLayout *layout = new QVBoxLayout();
widget->setLayout( layout );
for (int i = 0; i < 10; i++)
{
QPushButton *button = new QPushButton( QString( "%1" ).arg( i ) );
layout->addWidget( button );
}
dlg->show();
return app.exec();
}
简述 在播放酷狗音乐播放器中,在使用QScrollArea过程中,由于酷狗列表是经常可变的。我们需要适应的改变大小,比如窗口的扩大等,但由于QScrollArea自身就是用于查看很大范围的目标,所以当QScrollArea的大小发生变化时,里面的widget是不回发生变化的。 解决方案...
简述 QScrollArea提供了一个滚动视图到另一个部件。 滚动区域用于显示一个画面中的子部件的内容。如果部件超过画面的大小,视图可以提供滚动条,这样就都可以看到部件的整个区域。 基本使用 QScrollArear容器里面的子部件必须使用setWidget()指定 可以使用widget()函数来获取部件,视图可以使用setWidgetResizable()函数来调整大小。 有两个便利的函数:en...
使用框架生成一个Qt Widgets Application,基类选择QWidget,取消生成ui文件 然后在widget.cpp文件中下下如下代码: 编译执行看看效果。...
参考:http://blog.csdn.net/liang19890820/article/details/52402002 基本用法 设置大小 获取与移除部件 获取 移除...
1.代码片段 2.注意细节 这个滚动视图虽然看起来简单,但是在创建时,如果稍不注意,就会进入各种坑,现在总结一下 1.QScrollArea 在创建时,可设置其父控件,滚动区域尺寸一定不能比其父控件还大,否则可能无法看到水平或者垂直滚动条 2. s->setWidget(mWid),滚动区域窗体需要比滚动窗体大,才能看到水平或垂直滚动条...
参考博客 使QScrollArea的背景透明,并且不影响子控件 核心代码...
1、QScrollArea、viewport、widget QScrollArea和viewport的大小基本等同,viewport会减去QScrollArea的margin吧 有时候继承QScrollArea,重写基类方法后你会发现,控件显示不全,就有可能是viewport大小没有设置导致的 QScrollArea:rect是自己的坐标和大小,geometry是在父窗口位置和大小,y轴是在父窗口...
FJ has purchased N (1 <= N <= 2000) yummy treats for the cows who get money for giving vast amounts of milk. FJ sells one treat per day and wants to maximize the money he receives over a given p...