本文整理汇总了C++中QScrollArea::setHorizontalScrollBar方法的典型用法代码示例。如果您正苦于以下问题:C++ QScrollArea::setHorizontalScrollBar方法的具体用法?C++ QScrollArea::setHorizontalScrollBar怎么用?C++ QScrollArea::setHorizontalScrollBar使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QScrollArea
的用法示例。
在下文中一共展示了QScrollArea::setHorizontalScrollBar方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setScrollBars
void tst_QAbstractScrollArea::setScrollBars()
{
QScrollArea scrollArea;
scrollArea.resize(300, 300);
scrollArea.show();
QPointer<QScrollBar> vbar = scrollArea.verticalScrollBar();
QPointer<QScrollBar> hbar = scrollArea.horizontalScrollBar();
// Now set properties on the scroll bars
scrollArea.verticalScrollBar()->setInvertedAppearance(true);
scrollArea.verticalScrollBar()->setInvertedControls(true);
scrollArea.verticalScrollBar()->setTracking(true);
scrollArea.verticalScrollBar()->setRange(-100, 100);
scrollArea.verticalScrollBar()->setPageStep(42);
scrollArea.verticalScrollBar()->setSingleStep(3);
scrollArea.verticalScrollBar()->setValue(43);
scrollArea.horizontalScrollBar()->setInvertedAppearance(true);
scrollArea.horizontalScrollBar()->setInvertedControls(true);
scrollArea.horizontalScrollBar()->setTracking(true);
scrollArea.horizontalScrollBar()->setRange(-100, 100);
scrollArea.horizontalScrollBar()->setPageStep(42);
scrollArea.horizontalScrollBar()->setSingleStep(3);
scrollArea.horizontalScrollBar()->setValue(43);
qApp->processEvents();
// Then replace the scroll bars
scrollArea.setVerticalScrollBar(new QScrollBar);
scrollArea.setHorizontalScrollBar(new QScrollBar);
// Check that the old ones were deleted
QVERIFY(!vbar);
QVERIFY(!hbar);
qApp->processEvents();
// Check that all properties have been populated
QVERIFY(scrollArea.verticalScrollBar()->invertedAppearance());
QVERIFY(scrollArea.verticalScrollBar()->invertedControls());
QVERIFY(scrollArea.verticalScrollBar()->hasTracking());
QVERIFY(scrollArea.verticalScrollBar()->isVisible());
QCOMPARE(scrollArea.verticalScrollBar()->minimum(), -100);
QCOMPARE(scrollArea.verticalScrollBar()->maximum(), 100);
QCOMPARE(scrollArea.verticalScrollBar()->pageStep(), 42);
QCOMPARE(scrollArea.verticalScrollBar()->singleStep(), 3);
QCOMPARE(scrollArea.verticalScrollBar()->value(), 43);
QVERIFY(scrollArea.horizontalScrollBar()->invertedAppearance());
QVERIFY(scrollArea.horizontalScrollBar()->invertedControls());
QVERIFY(scrollArea.horizontalScrollBar()->hasTracking());
QVERIFY(scrollArea.horizontalScrollBar()->isVisible());
QCOMPARE(scrollArea.horizontalScrollBar()->minimum(), -100);
QCOMPARE(scrollArea.horizontalScrollBar()->maximum(), 100);
QCOMPARE(scrollArea.horizontalScrollBar()->pageStep(), 42);
QCOMPARE(scrollArea.horizontalScrollBar()->singleStep(), 3);
QCOMPARE(scrollArea.horizontalScrollBar()->value(), 43);
}
示例2: setup
// Setup widget
void MyWidget::setup(int layoutMargin, QString borderColor, QString backgroundColor) {
// Some styling
visibleArea = QSize(600,400);
this->borderColor = borderColor;
this->backgroundColor = (backgroundColor == "" ? "rgba(0,0,0,200)" : backgroundColor);
borderLeftRight = -1;
borderTopDown = -1;
fullscreen = false;
// The different QRects
rectShown = QRect();
rectHidden = QRect(0,-10,10,10);
rectAni = QRect();
// The current geometry and position
isShown = false;
this->setGeometry(rectHidden);
// Fading
backOpacityShow = 0.5;
backOpacityCur = 0;
centerOpacityCur = 0;
fade = new QTimeLine;
fadeIN = true;
fadeEffectCenter = new QGraphicsOpacityEffect;
connect(fade, SIGNAL(valueChanged(qreal)), this, SLOT(fadeStep()));
connect(fade, SIGNAL(finished()), this, SLOT(aniFinished()));
// The current widget look
this->setStyleSheet(QString("background: rgba(0,0,0,%1);").arg(255*backOpacityShow));
// the central widget containing all the information
center = new QWidget(this);
center->setGraphicsEffect(fadeEffectCenter);
center->setObjectName("center");
// For some reason, if the border is not defined right here at the beginning, it wont be visible...
if(borderColor == "")
center->setStyleSheet(QString("#center { background: %1; border-radius: 10px; font-size: 12pt; }").arg(this->backgroundColor));
else
center->setStyleSheet(QString("#center {background: %1; border-radius: 15px; font-size: 12pt; border: 2px solid %2; }").arg(this->backgroundColor).arg(borderColor));
// Create and set the scrollarea with main layout
QVBoxLayout *central = new QVBoxLayout;
central->setMargin(layoutMargin);
QScrollArea *scroll = new QScrollArea(this);
scroll->setObjectName("scrollWidget");
scroll->setStyleSheet("QWidget#scrollWidget { background: transparent; padding-bottom: 3px; border-radius: 0px; }");
QWidget *scrollWidget = new QWidget(scroll->widget());
scrollWidget->setStyleSheet("background: transparent;");
scroll->setWidgetResizable(true);
scroll->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Expanding);
scrollWidget->setLayout(central);
scroll->setWidget(scrollWidget);
mainlayout = new QVBoxLayout;
if(layoutMargin == 0) mainlayout->setMargin(0);
center->setLayout(mainlayout);
mainlayout->addWidget(scroll);
// This widget gets the main layout set to
centralWidget = new QWidget;
central->addWidget(centralWidget);
// And set the custom scrollbar
scrollbar = new CustomScrollbar;
scroll->setVerticalScrollBar(scrollbar);
// And in case the monitor resolution is so small, that the horizontal scrollbar is visible:
CustomScrollbar *scrollbarHor = new CustomScrollbar;
scroll->setHorizontalScrollBar(scrollbarHor);
}