2

有谁知道我可以在我的 CLDC 应用程序中使用的类似图像映射的 Blackberry 控件?如果没有,有没有办法在 MainScreen 或 BitmapField 派生控件上单击 x,y 坐标?

谢谢,

4

1 回答 1

4

我假设您正在考虑为 Storm 提供此控件 - 唯一可以在屏幕上单击任意点有意义的设备。

在这种情况下,最简单的方法可能是将 BitmapField 子类化为可聚焦并响应点击 - 如下所示:

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
    }
}
}

当然,为轨迹球设备实现图像映射类型功能要复杂得多——您必须维护一个光标或其他东西,以便用户知道他们在哪里点击。

于 2009-04-24T03:05:24.390 回答