C

可滑动 QML 类型

提供一个可以被“轻扫”的表面。 更多信息...

导入语句import QtQuick
Qt Quick Ultralite 1.0
继承自

Item

被以下继承

ListView

属性

详细描述

可滑动项将其子项放置在一个可以拖动和轻扫的表面上,导致对子项的查看滚动。这种行为是设计用于展示大量子项的元素(如 ListView 和 GridView)的基础。

在传统的用户界面中,可以通过使用标准控件(如滚动条和箭头按钮)来滚动视图。在某些情况下,也可以在移动光标的同时按住鼠标按钮来直接拖动视图。在基于触控的用户界面中,这个拖动动作通常与轻扫动作相辅相成,在用户停止触摸视图后继续滚动。

可滑动不自动裁剪其内容。如果它不是作为全屏项使用,请考虑将 clip 属性设置为 true。

示例用法

以下示例展示了如何在用户可以拖动或挥动以查看不同部分的较大图像中的一个小视图。

Flickable {
    width: 150; height: 100
    contentWidth: image.width; contentHeight: image.height

    Image { id: image; source: "qrc:/images/qtlogo.png" }
}

属性说明

boundsBehavior : 枚举

此属性表示是否可以拖动表面超过可滚动视图的边界,或者挥动时是否会超出可滚动视图的边界。

boundsBehavior可以是以下之一

  • Flickable.StopAtBounds - 可滚动视图的内容不能被拖动到视图边界之外,挥动也不会超出。
  • Flickable.DragOverBounds - 可滚动视图的内容可以拖动到视图边界之外,但挥动不会超出。
  • Flickable.OvershootBounds - 当挥动时内容可以超出边界,但不能被拖动到视图边界之外。
  • Flickable.DragAndOvershootBounds(默认)- 可滚动视图的内容可以拖动到视图边界之外,挥动时也可以超出。

contentHeight : int

内容高度(由可滚动视图控制的面板)。


contentItem : Item*

包含可拖动内容的内部Item。


contentWidth : int

内容宽度(由可滚动视图控制的面板)。


contentX : int

此属性表示当前在可滚动视图左侧的面板X坐标。


contentY : int

此属性表示当前在可滚动视图顶部的面板Y坐标。


flickableDirection : 枚举

此属性确定哪些方向可以挥动视图。

  • Flickable.AutoFlickDirection(默认)- 如果contentHeight不等于可滚动视图的高度,则允许垂直挥动。如果contentWidth不等于可滚动视图的宽度,则允许水平挥动。
  • Flickable.AutoFlickIfNeeded - 如果contentHeight大于可滚动视图的高度,则允许垂直挥动。如果contentWidth大于可滚动视图的宽度,则允许水平挥动。
  • Flickable.HorizontalFlick - 允许水平挥动。
  • Flickable.VerticalFlick - 允许垂直挥动。
  • Flickable.HorizontalAndVerticalFlick - 允许两个方向的挥动。

interactive : bool

此属性表示用户是否可以与可滚动视图交互。用户无法拖动或挥动非交互式的可滚动视图。

默认情况下,此属性为true。

此属性对于临时禁用挥动很有用。这允许与可滚动视图的子项进行特殊交互;例如,您可能希望在滚动可滚动视图的子弹出对话框时冻结可滚动视图。


maximumFlickVelocity : Item*

此属性表示用户以像素/秒为单位可以挥动的视图最大速度。

默认值取决于平台。


movingHorizontally : bool

此属性表示视图是否当前正在水平移动,这可能是用户拖动或挥动视图所致。


movingVertically : bool

该属性描述了视图是否因为用户拖动或滑动而正在垂直移动。


可见区域组

visibleArea.heightRatio : 实数

visibleArea.widthRatio : 实数

visibleArea.xPosition : 实数

visibleArea.yPosition : 实数

这些属性描述了当前正在查看的区域的坐标和大小。大小定义为整个视图当前可见部分的百分比,缩放到0.0 - 1.0。页面位置通常在0.0(起始)到1.0减去大小比例(结束)之间,即[code translate="no">yPosition在0.0到1.0-heightRatio之间。然而,内容可能被拖动到正常范围之外,导致页面位置也超出正常范围。

此组中所有值均为只读。使用contentXcontentYcontentWidthcontentHeight 来进行更改。


在一定Qt许可证下可用。
了解更多。