scrollArea控件的滚动条不显示解决方案
scrollArea控件的滚动条不显示
用Qt 5.0.2的creator建立了一个界面,使用了scrollArea控件。并将一个Qimage添加到scrollArea的scrollAreaWidgetContents。
我可以确定的是,这个QImage一定在水平方向大于控件的程度,但是超出的部分不能显示。
在setupUI函数中存在
scrollArea = new QScrollArea(frame);
scrollArea->setObjectName(QString::fromUtf8("scrollArea"));
scrollArea->setWidgetResizable(true); // 允许自由改变内在控件的大小
scrollAreaWidgetContents = new QWidget();
scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents"));
scrollAreaWidgetContents->setGeometry(QRect(0, 0, 1002, 503));
gridLayout = new QGridLayout(scrollAreaWidgetContents);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
scrollArea->setWidget(scrollAreaWidgetContents); // 包含控件
可是为什么图像在超出显示区域后,滚动条不出现?
------解决方案--------------------
scrollArea = new QScrollArea(frame);
scrollArea->setObjectName(QString::fromUtf8("scrollArea"));
scrollArea->setWidgetResizable(true); // 允许自由改变内在控件的大小
scrollAreaWidgetContents = new QWidget();
scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents"));
scrollAreaWidgetContents->setGeometry(QRect(0, 0, 1002, 503));
scrollAreaWidgetContents->setFixSize(1000,1000);
gridLayout = new QGridLayout(scrollAreaWidgetContents);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
scrollArea->setWidget(scrollAreaWidgetContents); // 包含控件
用Qt 5.0.2的creator建立了一个界面,使用了scrollArea控件。并将一个Qimage添加到scrollArea的scrollAreaWidgetContents。
我可以确定的是,这个QImage一定在水平方向大于控件的程度,但是超出的部分不能显示。
在setupUI函数中存在
scrollArea = new QScrollArea(frame);
scrollArea->setObjectName(QString::fromUtf8("scrollArea"));
scrollArea->setWidgetResizable(true); // 允许自由改变内在控件的大小
scrollAreaWidgetContents = new QWidget();
scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents"));
scrollAreaWidgetContents->setGeometry(QRect(0, 0, 1002, 503));
gridLayout = new QGridLayout(scrollAreaWidgetContents);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
scrollArea->setWidget(scrollAreaWidgetContents); // 包含控件
可是为什么图像在超出显示区域后,滚动条不出现?
------解决方案--------------------
scrollArea = new QScrollArea(frame);
scrollArea->setObjectName(QString::fromUtf8("scrollArea"));
scrollArea->setWidgetResizable(true); // 允许自由改变内在控件的大小
scrollAreaWidgetContents = new QWidget();
scrollAreaWidgetContents->setObjectName(QString::fromUtf8("scrollAreaWidgetContents"));
scrollAreaWidgetContents->setGeometry(QRect(0, 0, 1002, 503));
scrollAreaWidgetContents->setFixSize(1000,1000);
gridLayout = new QGridLayout(scrollAreaWidgetContents);
gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
scrollArea->setWidget(scrollAreaWidgetContents); // 包含控件