If you don't need the flicking effects, do you really need Flickable then? Maybe coding your own movable rectangle could be easier?
If you do see the value in exactly Flickable, play with the properties that control the flicking behavior especially flickDeceleration, maximumFlickVelocity and maybe even pressDelay. You may be able to nearly get rid of flickability [when needed]. Best regards, Artem. On Aug 31, 2011, at 12:48 PM, Tarantism wrote: > On Wed, 2011-08-31 at 01:36 +0000, [email protected] wrote: >> Can you describe in more detail exactly what is happening? It sounds to me >> like the Flickable is flicking at the end, which would be expected . > I'm trying to implement a control a bit like a radio tuning dial where the > numbers move below a fixed marker. > I've included some code below so you can see the effect. The top slider > uses a Flickable, the lower slider uses a simple dragging mechanism. > > I find it's often difficult to accurately position the slider using the > top slider which uses a Flickable. I think the problem is caused by > small position changes as you lift your finger which then get turned > into velocity by the flickable, magnifying the effect. > > import QtQuick 1.0 > > Rectangle { > clip: true > anchors.fill: parent > color: "white" > > Flickable { > id: flickable > anchors.top: parent.top; anchors.left: parent.left; > anchors.right: parent.right > height: parent.height/2 > contentWidth: 100*50 > Row { > height: parent.height > Repeater { > model: 100 > delegate: Text { > width: 50; height: parent.height > text: index > horizontalAlignment: Text.AlignHCenter > verticalAlignment: Text.AlignVCenter > } > } > } > } > > Item { > id: draggable > property int contentX: 0 > anchors.bottom: parent.bottom; anchors.left: parent.left; > anchors.right: parent.right > height: parent.height/2 > MouseArea { > property int xlast: 0 > anchors.fill: parent > onPressed: { > xlast = mouseX; > } > onPositionChanged: { > draggable.contentX = draggable.contentX-(mouseX-xlast) > xlast = mouseX; > } > } > Item { > transform: Translate { x: -draggable.contentX } > width: 100*50 > height: parent.height > Row { > height: parent.height > Repeater { > model: 100 > delegate: Text { > width: 50; height: parent.height > text: index > horizontalAlignment: Text.AlignHCenter > verticalAlignment: Text.AlignVCenter > } > } > } > } > } > > Rectangle { > id: marker > anchors.centerIn: parent > color: "red"; opacity: 0.5; width: 10; height: parent.height > } > } > > > _______________________________________________ > Qt-qml mailing list > [email protected] > http://lists.qt.nokia.com/mailman/listinfo/qt-qml _______________________________________________ Qt-qml mailing list [email protected] http://lists.qt.nokia.com/mailman/listinfo/qt-qml
