嗨,可以在titledBorder的标题中放置一个图标,例如以下代码:


import java.awt.GridLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.border.TitledBorder;

public class TitledExample extends JPanel {

  public TitledExample() {
    super(true);

    this.setLayout(new GridLayout(1, 1, 5, 5));

    JLabel label = new JLabel("Titled Border");
    label.setHorizontalAlignment(JLabel.CENTER);

    TitledBorder titled = new TitledBorder("Image here ?? Title");
    label.setBorder(titled);

    add(label);
  }

谢谢,干杯

最佳答案

这可能不是您想要的,但是一两个漂亮的Unicode™ glyph可能会做。

附录:@rhu's approach是可取的,但是我无法抗拒尝试这样做:

java - 标题中的图标dB顺序标题-LMLPHP

TitledBorder titled = BorderFactory.createTitledBorder("\u2615");
titled.setTitleFont(new Font(Font.Dialog, Font.PLAIN, 32));
titled.setTitleColor(Color.blue);
label.setBorder(titled);

10-08 01:29