0

VerticalFieldManagerBlackBerryでフォーカスを描画する方法。

私はこれを試しましたが、動作しません。

VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);
4

3 に答える 3

1

それを呼び出しField.setFocusてみることはできますが、マネージャはコンテナであるため、その上に「フォーカス」が表示されるかどうかはわかりません。

うまくいかない場合は、メソッドをオーバーライドして、true が返さpaintれたときに独自のカスタム フォーカスを描画することもできます。isFocus

于 2012-04-24T13:47:41.793 に答える
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);
于 2012-04-25T09:43:36.320 に答える
0

これを試して -

VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE);

次に、アイテムを vv に追加します。

于 2012-04-24T13:43:55.607 に答える