首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在BlackBerry中将焦点设置为FieldManager?

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

Stack Overflow用户
提问于 2012-04-24 21:39:31
回答 3查看 756关注 0票数 0

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

我试过了,但不起作用。

代码语言:javascript
复制
VerticalFieldManager vv=new VerticalFieldManager(Manager.focusFOCUSABLE);
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-04-25 17:43:36

这就是这样做的方法:

代码语言:javascript
复制
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);
票数 0
EN

Stack Overflow用户

发布于 2012-04-24 21:47:42

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

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

票数 1
EN

Stack Overflow用户

发布于 2012-04-24 21:43:56

试试这个-

代码语言:javascript
复制
VerticalFieldManager vv=new VerticalFieldManager(FOCUSABLE);

然后将项目添加到vv。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10299091

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档