BlackBerry Forums Support Community

BlackBerry Forums Support Community (http://www.blackberryforums.com/)
-   Developer Forum (http://www.blackberryforums.com/developer-forum/)
-   -   .trackwheelRoll() (http://www.blackberryforums.com/developer-forum/94970-trackwheelroll.html)

Pook 09-13-2007 10:52 AM

.trackwheelRoll()
 
I'm implementing TrackwheelListener and my code in .trackwheelClick() is working correctly but .trackwheelRoll() never fires.

Any ideas?

bemshaswing 09-13-2007 11:35 AM

if you paste your code we might be able to help

Pook 09-14-2007 04:18 AM

Here's the code

Code:

package com.lyon.forum;

import net.rim.device.api.system.TrackwheelListener;

import net.rim.device.api.ui.UiApplication;
import net.rim.device.api.ui.container.MainScreen;
import net.rim.device.api.ui.container.FlowFieldManager;

import net.rim.device.api.ui.Field;
import net.rim.device.api.ui.component.LabelField;
import net.rim.device.api.ui.component.Dialog;
import net.rim.device.api.ui.component.RichTextField;

public class Forum extends UiApplication implements TrackwheelListener
{
    public MainScreen _MainScreen;
   
    public static void main( String[] args )
    {
        Forum forum = new Forum();
        forum.enterEventDispatcher();
    }

    public Forum()
    {
        this._MainScreen = new MainScreen();
        this._MainScreen.addTrackwheelListener( this );
        this._MainScreen.setTitle( new LabelField( "Forum", LabelField.ELLIPSIS | LabelField.USE_ALL_WIDTH ) );
       
        this._MainScreen.add( new RichTextField( "RichTextFieldA" ) );
        this._MainScreen.add( new RichTextField( "RichTextFieldB" ) );
        this._MainScreen.add( new RichTextField( "RichTextFieldC" ) );

        this.pushScreen( this._MainScreen );
    }

    public boolean trackwheelClick( int status, int time )
    {
        Field leafField = this.getActiveScreen().getLeafFieldWithFocus();
        if ( leafField instanceof RichTextField )
        {
            RichTextField richTextField = (RichTextField) leafField;
            Dialog.alert( richTextField.getText() );
        }
        return true;
    }

    public boolean trackwheelUnclick( int status, int time )
    {
        return false;
    }

    public boolean trackwheelRoll(int amount, int status, int time)
    {
        this._MainScreen.setTitle( this.getActiveScreen().getLeafFieldWithFocus().toString() );
        return true;
    }
}

I think I'm on the case because .trackwheelRoll() IS being fired but only when you scroll past the Fields.

bemshaswing 09-14-2007 09:06 AM

in trackwheelRoll try returning super.trackwheelroll(amount, status, time);

Pook 09-17-2007 05:17 AM

Thanks anyway but that doesn't work. I got what I wanted by Extending RichTextField and overriding .onFocus().


Quote:

Originally Posted by bemshaswing (Post 667038)
in trackwheelRoll try returning super.trackwheelroll(amount, status, time);



All times are GMT -5. The time now is 12:39 PM.

Powered by vBulletin® Version 3.6.12
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.