JButton 在其边框和按钮本身之间有填充
JButton with padding between its border and the button itself
我有一个 JButton,其背景为绿色,边框为 LineBorder。我想在按钮和边框之间插入一个 space ,一种填充。
我试过 setMargin(new Insets(x,y,t,z)) 但它似乎不起作用。
这是我的一段代码。
JButton JBtn=new JButton("sdfd");
JBtn.setBorder(BorderFactory.createLineBorder(Color.CYAN,5));
JBtn.setBackground(Color.GREEN);
JBtn.setMargin(new Insets(5,5,10,10));
有什么建议吗?
对 Border
的更改正在改变 margins
的工作方式(它们似乎不再包含在确定布局的决策中)。
相反,您可以使用 CompoundBorder
,例如...
JBtn.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createLineBorder(Color.CYAN, 5),
BorderFactory.createEmptyBorder(5, 5, 10, 10)));
边框是按钮的一部分,点击它们会点击按钮。您可以将背景设置为绿色,然后在背景上绘制边框:
jBtn.setBackground(Color.GREEN);
jBtn.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createLineBorder(Color.CYAN, 5),
BorderFactory.createLineBorder(Color.BLACK, 20)));
I've tried with setMargin(new Insets(x,y,t,z)) but it seems not working.
因为如果您阅读 setMargin
的文档,您会看到
[...] if a non-default border is set on the button, it is that Border object's responsibility to create the appropriate margin space (else this property will effectively be ignored).
此外,为 类 保留大写名称,将 JBtn
重命名为 jBtn
。
我有一个 JButton,其背景为绿色,边框为 LineBorder。我想在按钮和边框之间插入一个 space ,一种填充。 我试过 setMargin(new Insets(x,y,t,z)) 但它似乎不起作用。 这是我的一段代码。
JButton JBtn=new JButton("sdfd");
JBtn.setBorder(BorderFactory.createLineBorder(Color.CYAN,5));
JBtn.setBackground(Color.GREEN);
JBtn.setMargin(new Insets(5,5,10,10));
有什么建议吗?
对 Border
的更改正在改变 margins
的工作方式(它们似乎不再包含在确定布局的决策中)。
相反,您可以使用 CompoundBorder
,例如...
JBtn.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createLineBorder(Color.CYAN, 5),
BorderFactory.createEmptyBorder(5, 5, 10, 10)));
边框是按钮的一部分,点击它们会点击按钮。您可以将背景设置为绿色,然后在背景上绘制边框:
jBtn.setBackground(Color.GREEN);
jBtn.setBorder(BorderFactory.createCompoundBorder(
BorderFactory.createLineBorder(Color.CYAN, 5),
BorderFactory.createLineBorder(Color.BLACK, 20)));
I've tried with setMargin(new Insets(x,y,t,z)) but it seems not working.
因为如果您阅读 setMargin
的文档,您会看到
[...] if a non-default border is set on the button, it is that Border object's responsibility to create the appropriate margin space (else this property will effectively be ignored).
此外,为 类 保留大写名称,将 JBtn
重命名为 jBtn
。