[SOLVED]How to write onMinimunScaleCange event handler on PinchArea



  • in PinchArea property pinch.minimunScale.

    i want to run script when change the minmunScale.

    I know, properties has "on<property name>Changed" event handler.
    but, Cant written onMinimunScaleChanged.

    How write event handler of minimumScale property changed?



  • Hi dFrontia,

    bq. but, Cant written onMinimunScaleChanged.

    What do you mean ? You cannot write it in place, or you wrote it but it didn't worked ?

    If you cannot edit the component containing the PinchArea, then you can use a Connections object to handle the onMinimumScaleChanged. Have a look at the "QML Connections page":http://doc.qt.digia.com/4.7-snapshot/qml-connections.html

    That would look like
    @
    Connections {
    target: pinchArea
    onMinimumScaleChanged {
    // Handle here
    }
    }
    @



  • Thanks for replay.

    your replay has big hit!

    This has been resolved.

    correct code is....

    @ PinchArea{
    id:panelBase
    anchors.fill: parent

        //minimumScale are enclosed in "pinch" -refer to PinchArea.
        pinch.minimumScale: width/height
    
        onWidthChanged: {
            console.debug("It came! width")
        }
    
        //How to write a successful
        Connections{
            target: panelBase.pinch
            onMinimumScaleChanged :{
                console.debug("It came onMinimunScaleChange!!")
            }
        }
    
        // I was challenged in the following description.
        // Cannot assign to non-existent propery
        //onMinimumScaleChanged :{
        //    consle.debug("It NOT came...")
        //}
    
    }
    

    @



  • I'm glad it solved your problem !

    But I'm also very intrigued it doesn't work in the first place. The "Connections" object do the exact same. In your sample you wrote "consle.debug", missing a "o". I guess in the real code you wrote it correctly ?



  • I had misspelled "console".
    But it does not matter.

    Following error when you perform a QML Viewer than that.

    @D:\Qt\4.8.4\bin\qmlviewer.exe D:/DEV/Demo/PinchAreaTest/PinchAreaTest.qml を起動中
    file:///D:/DEV/Demo/PinchAreaTest/PinchAreaTest.qml:28:9: Cannot assign to non-existent property "onMinimumScaleChanged"
    onMinimumScaleChanged :{
    ^
    @

    If the error has not occurred, would have pointed out errors are displayed.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.