Question

Does anyone know of an Image Map-like Blackberry Control that I can use in my CLDC application? If there isn't one, is there a way to get click x,y coordinates on a MainScreen or BitmapField derived control?

Thanks,

Was it helpful?

Solution

I assume you're thinking of this control for the Storm - the only device for which clicking on an arbitrary point on screen makes sense.

In that case, the easiest way is probably to subclass BitmapField to be focusable and respond to clicks - something like this:

public class ClickableBitmapField extends BitmapField {
// Make the control focusable    
public boolean isFocusable() {
       return true; 
}

protected boolean touchEvent(TouchEvent message) {
    if (message.getEventCode == TouchEvent.CLICK) {
        int x = message.getX();
        int y = message.getY();
        // do something with x and y here
    }
}
}

Of course it'd be a lot more complicated to implement image map type functionality for a trackball device - you'd have to maintain a cursor or something so the user knows where they're clicking.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top