ScrollView 滚动条显示的可用宽度

ScrollView available width if scrollbar showig

我有一个滚动视图,其中包含一个流程,其中可能包含许多长得远远超出屏幕大小的矩形。我的矩形将它们的宽度调整为 ScrollView(它们的父级)的宽度。

当没有滚动条时,这工作正常,但当滚动条出现时,矩形与滚动条重叠。

我的矩形如何检测它们的父级 (ScrollView) 是否显示滚动条,它们如何知道要减少多少像素的宽度? ScrollView 组件似乎没有公开 属性 for width less scrollbar width.

现在广泛采用的样式是滚动条仅在需要时出现并覆盖滚动区域的内容。您通常不会担心所看到的重叠。

如果您想要守旧并拥有一个不覆盖内容的始终可见的滚动条,您可以使用 ScrollBar 组件及其随 ScrollView 附带的 API。您无需使用 ScrollView 提供的 ScrollBar,而是附加您手动放置在 contentItem 外部而不是其顶部的新滚动条。

这会很棘手,但您可以通过查看此处的“自定义 ScrollView”文档了解如何完成它的要点:

https://doc.qt.io/qt-5/qtquickcontrols2-customize.html#customizing-scrollview