0

我使用 HTML 将文本放入 JButton。通过这种方式,我可以使用颜色和文本大小。我不喜欢的是按钮左边框和文本的距离(这个间距太大了)。有没有办法减少这个距离?我认为它应该是styleHTML 代码中的一些参数。

代码示例:

JButton btn = new JButton("<html><span style='color:#000000; font-size: 11pt;'>" + label + "</span></html>");
4

1 回答 1

1

我建议以编程方式执行此操作,而不是尝试使用 HTML 执行此操作,因为您更有可能看到跨平台的一致结果。

JButton btn = ...
btn.setHorizontalTextPosition(SwingConstants.LEFT);

然后您可以通过覆盖paintComponent(更多工作)或在启动时修改FontUIResource对象来自定义字体大小(尽管这会影响所有按钮的字体大小);例如

FontUIResource f = new FontUIResource("Tahoma", Font.PLAIN, 11);
Enumeration<Object> it = UIManager.getDefaults().keys();

while (it.hasMoreElements()) {
    Object key = it.nextElement();
    if (UIManager.get(key) instanceof FontUIResource) {
        UIManager.put(key, f);
    }
}
于 2010-04-29T11:16:21.317 回答