多按钮组件之间的填充

时间:2019-05-23 19:49:51

标签: codenameone

我正在尝试在多按钮组件之间添加填充。我做了getStyle()。setPaddingTop(10),但这填充在组件内,而不是边框​​的外部。我也有该组件的边框。因此,它清楚地显示了填充发生的位置。

我使用了getStyle()。setPaddingTop(10)。不是应该先填充然后填充边框,而不是先填充边框再填充边框吗?

/**
 * Padding between two items in my own class MultiButtonCC extended from MultiButton class
 */
    public void setPadding(int px) {
        getStyle().setPaddingTop(px);
    }

这是我的主窗体类

InfiniteContainer ic = new InfiniteContainer() {
            @Override
            public Component[] fetchComponents(int index, int amount) {
                java.util.List<Map<String, Object>> data = fetchGateData();
                MultiButtonCC[] cmps = new MultiButtonCC[data.size()];
                for (int iter = 0; iter < cmps.length; iter++) {
                    Map<String, Object> currentList = data.get(iter);
                    if (currentList == null) {
                        return null;
                    }

                    cmps[iter] = new MultiButtonCC();
                    cmps[iter].setTextLine1("Gate                   Airline                Code");
                    cmps[iter].setPadding(30);
                    //cmps[iter].getAllStyles().setFont(Font.createSystemFont(Font.FACE_MONOSPACE, Font.STYLE_BOLD, Font.SIZE_SMALL));
                    cmps[iter].getStyle().setBorder(border);
                    cmps[iter].setTextLine2("T2 51A, 57   American      A B C D E F");
                }
                return cmps;
            }
        };
.................. Padding
 x px
 ----------------- Border
| Line 1          |
| Line 2          |
 ------------------

1 个答案:

答案 0 :(得分:1)

我自己弄清楚了。这是提供我所寻找功能的余量。误切换了功能填充和边距。 我通过添加来解决:

/**
 * Set margin around the item
 */
public void setMargin(int px) {
    getStyle().setMarginTop(px);
}