Java Swing - 制作最小的按钮

8

你好
当我在swing中创建一个按钮时,它会在我的文本周围添加一个边框,从而使我的按钮变得更大。
现在,我真的需要那个屏幕空间,我通常会创建一个文本项(禁用),它创建了更小的组件大小(文本周围的空间更小),并向其添加一个监听器。节省空间,但很尴尬。 有没有更好的方法来创建一个微小的按钮?(当我试图使它更小时,它很快就会在里面放置“...”,尽管它有更多的文本空间)

10x


2
@userNNNN:“我真的需要那个屏幕空间”。你是否考虑过你的用户需要可点击的按钮和可操作的GUI?也许你应该考虑其他策略,包括滚动条和隐藏当前不相关的按钮。 - Andrew Thompson
1
好的,情况并非如此。有些软件,你必须争夺屏幕像素。但还是谢谢。 - Bick
3个回答

9

您只需要将Insets设置得更窄即可...

jButton1.setText("jButton1");
jButton1.setMargin(new java.awt.Insets(1, 2, 1, 2));

整数参数为: 顶部、左侧、底部、右侧的整数值

2
你尝试过设置按钮的大小吗? setMinimumSize(new Dimension(width, height))
setPreferredSize(new Dimension(width, height))
setMaximumSize(new Dimension(width, height))
通过使用这些方法的组合,以及指定按钮边缘和文本之间的空白(即边距),你应该能够实现所需的结果。

jButton.setMargin(new Insets(top, left, bottom, right))

这句话的意思是设置一个按钮(jButton)的边距(margin),其中参数为一个Insets对象,该对象包含了上、左、下、右四个方向的边距值。

0

如果您正在使用NetBeans GUI构建,可以通过更改其值为“用户代码”和值为“new java.awt.Insets(1,2,1,2)”的类型,在按钮属性“margin”下实现此目标。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接