如何在BlackBerry中将焦点设置为FieldManager?

时间:2012-04-24 13:39:31

标签: blackberry

如何将焦点绘制到BlackBerry中的VerticalFieldManager

我试过这个但没有用。

VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);

3 个答案:

答案 0 :(得分:1)

您可以尝试在其上调用Field.setFocus,但由于经理是一个容器,我不确定您是否会看到“重点”。

如果它不起作用,您可以尝试覆盖paint方法,并在isFocus返回true时绘制自己的自定义焦点。

答案 1 :(得分:0)

试试这个 -

VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE);

然后将项目添加到vv。

答案 2 :(得分:0)

这是做到这一点的方法:

VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE) {
    protected void paintBackground(Graphics g) {
    int prevColor = g.getColor();
    int bgColor;

    if (isFocus()) {
        bgColor = Color.Blue;
    } else {
        bgColor = Color.White;
    }

    g.setColor(bgColor);
    g.fillRoundRect(0, 0, getPreferredWidth(), getPreferredHeight(), 0, 0);
    g.setColor(prevColor);
}
    public void onFocus(int direction) {
    super.onFocus(direction);
    this.invalidate();
}
public void onUnfocus() {
    super.onUnfocus();
    this.invalidate();
}
};
_focusAnchor = new NullField(FOCUSABLE);
add(_focusAnchor);