- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我已经尝试了几种方法来让 QScrollBar 的 slider 根据 singleSteps() 的数量改变大小。我希望 stepSize() 为 ~1。
下面的链接让我最接近,但我似乎无法让它工作。
http://www.qtcentre.org/threads/2133-QScrollBar-custom-slider-s-size
我需要做什么来改变 slider 的大小?我会发布代码,但是就像我上面说的,我已经尝试了很多不同的尝试,我想清理我的石板,只看一个关于如何更改 slider 大小的干净示例。
最佳答案
通常, slider 的大小应该表示滚动内容的可见部分的大小。这就是 QAbstractSlider
的 API 的设计目的。
如果您想将可见部分的大小锁定为内容的非整数整体大小的某个整数倍,那么惯用的方法是通过非整数重新缩放滚动条的输出因子 height/(maximum() + pageStep())
。文档的逻辑高度(长度)映射到 maximum() + pageStep()
。您当然可以将 singleStep()
设置为等于 pageStep()
。
给定一些 numStrips
和 height
,进行如下操作:
int numStrips;
qreal height;
int page = qRound(height/numStrips);
int max = (numStrips - 1) * page;
scrollBar->setMinimum(0);
scrollBar->setMaximum(max);
scrollBar->setPageStep(page);
scrollBar->setSingleStep(page);
qreal strip = scrollBar->value() * height / max;
关于c++ - Qt 4.7.4 C++ QScrollBar -- 使用QStyle设置 slider 大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11386082/
我正在尝试获取 qscrollbar 的宽度,因为它改变了可见性。我这样做是因为我想通过 qscrollbar 的宽度更改我的 qtablewidget 的宽度(如果它可见)。 我正在使用来 se
这个问题在这里已经有了答案: Invalide use of incomplete type Qt (2 个答案) 关闭 3 年前。 QScrollArea *scrollArea = new QS
我想将我的 QScrollbar 滚动到中心;我以为这很容易,但是 QScrollBar *bar = ui->scrollArea->horizontalScrollBar(); bar->setV
我必须制作具有固定大小句柄的滚动条,因为它的背景图像在缩放时变得很难看。我使用以下样式表: QScrollBar::handle:vertical { border-image:url(:/ima
当我使用样式表设置我的 QScrollBar 样式时,背景颜色是方格的,而不是纯色的。 QScrollBar:horizontal { background-color: grey; } 如何
有没有办法设置 QScrollArea 的宽度这样就不需要水平滚动条了?我知道我可以通过将其策略设置为始终关闭来隐藏水平滚动条。但是,我想制作 QScrollArea大到不需要它。 我目前正在使用 s
如何隐藏 QScrollBar 箭头? 我需要隐藏在水平滚动条中。 我试图用 setStyleSheet 隐藏: setStyleSheet(" QScrollBar:left-arrow:horiz
我有一个简单的QPlainTextEdit。在MainWindow构造函数中: for(int i = 0; i plainTextEdit->appendPlainText("testing");
我想设置滚动条的样式。当 scrollarea 内容滚动时,我可以将样式应用于滚动条。但是当内容不滚动时,样式不会应用到它。 我使用了以下样式元素: QScrollBar:vertical{ /**
前段时间我发布了this question试图了解如何更改 QScrollBar 的大小。最后,我能够用样式表代码做我想做的事: setStyleSheet("QScrollBar:vertical
如果按下 QScrollBar 的箭头按钮,是否可以发出信号?据我所知,只有 sliderPressed() 信号。如果存在,我想要来自 valueChanged() 信号的另一个解决方案。 最佳答案
如何在 QScrollbar 旁边放置一个小部件,如下所示: 我使用 QScrollArea 并覆盖 Horizontal-QScrollBar。首先我想,我可以使用 paintEvent 在栏旁
我正在尝试通过重新实现 paintEvent 函数来为 QScrollBar 设置皮肤,但我遇到了麻烦。我找不到有关滚动条上按钮的任何信息,而且我只能找到有关实际 slider (您可以捕获和拖动
我想为执行以下操作的 QStyleSheet 制作渐变:1) 透明顶部 40%。2) 不透明中间 20%,从黑色到白色。3)透明底40%。 一个很好的例子是考虑一个三色旗帜,但我希望顶部和底部透明,并
我的问题很简单:如何在我的 QScrollArea 中设置 QScrollBar。我已经测试了很多东西但没有任何效果......也许在 QTabWidget 中设置 QScrollArea 是个问题?
最近我在 this question 来到 SO问我怎样才能拿到 QComboBox 的 QScrollBar 来改变它的厚度。阅读回复后,我为我的 Qt Embedded 应用程序尝试了 Marco
我不知道如何设置样式表来修改 QScrollArea 中的 QScrollBar。 我第一次尝试: scrollarea = QScrollArea() scrollarea.verticalScro
默认的QPlainTextEdit只有垂直滚动条,我想添加水平滚动条。 我试过了(这段代码在 QMainWindow 类的构造函数中) QPlainTextEdit * editor = new QP
我正在尝试为 QScrollbar 应用样式表,右侧箭头没有显示,我无法更改 handle 宽度和栏的背景颜色。 有什么可以帮助我显示右箭头并更改 handle 的宽度以及背景颜色吗? 代码: sli
我已经使用样式表自定义了水平和垂直滚动条,没问题。但是仍然有一个烦人的小区域仍然是空白的: 水平条和垂直条的交点。一个小矩形。 我怎样才能改变它的颜色? (使用样式表) 谢谢! Mac OSX Sno
我是一名优秀的程序员,十分优秀!