0

我遇到了一个问题,就是在绘制时将一个字段放在前面,以前有没有人反驳过这样的问题?

简单来说,问题是我使用NegativeMarginVerticalFieldManager的是高级 UI示例,我用它在每个面板按钮下显示突出显示的文本,文本应该在面板下的内容前面,但现在它在后面。

在此处输入图像描述

那么,有人知道如何让它出现在前面吗?

4

1 回答 1

2

上色顺序不同。你能覆盖你的领域中的油漆并检查油漆的顺序吗?

不幸的是,z-order 与如何将字段添加到管理器的顺序相关联,我不知道如何更改它。

你可以做什么 - 覆盖经理中的油漆并按你需要的顺序为孩子调用油漆:

public class MyManager extends NegativeMarginVerticalFieldManager {
    protected void paint(Graphics g) {
        for (int i = 1; i < getFieldCount(); i++) {
            paintChild(getField(i), g);
        }

        if (getFieldCount() > 0)
           paintChild(getField(0), g);
    }
}

这是 hack - 我在画第一个字段之后。

于 2012-11-07T13:51:14.070 回答