"enabled" does not match my case.

I need receive the MouseArea signals but as well as those below the top
item can receive the signals also.

Refer to MouseEvent element document, seems accepted can do that.
---------
accepted : bool

Setting accepted to true prevents the mouse event from being propagated
to items below this item.

Generally, if the item acts on the mouse event then it should be
accepted so that items lower in the stacking order do not also respond
to the same event.


But following code does not work as I wish
        MouseArea {
            anchors.fill: parent
            onClicked: {
                console.log("mouse.accepted="+mouse.accepted)
                mouse.accepted = false
                console.log("mouse.accepted="+mouse.accepted)
            }
        }

Thanks,
Halton.

On Wed, 2010-12-08 at 02:55 +0800, Adriano Rezende wrote:
> On Tue, Dec 7, 2010 at 4:31 AM, Halton Huo <halton....@intel.com> wrote:
> > So my questions how to ignore the received signals to let other items to
> > continue deal with those signals?
> 
> You can set enabled property to false or ignore the event on mouse press.
> 
> MouseArea {
>     anchors.fill: parent
>     onClicked: console.log("background clicked");
> }
> 
> MouseArea {
>     anchors.fill: parent
>     enabled: false
>     //onPressed: mouse.accepted = false;
>     onClicked: console.log("foreground clicked");
> }
> 
> Br,
> Adriano


_______________________________________________
Qt-qml mailing list
Qt-qml@trolltech.com
http://lists.trolltech.com/mailman/listinfo/qt-qml

Reply via email to