【发布时间】:2013-03-31 08:18:32
【问题描述】:
我正在尝试为 JLabel 加下划线。我到处寻找,但我什么也没得到。即使在属性中,也没有为 JLabel 加下划线的选项。我能做什么?
【问题讨论】:
标签: java swing netbeans jlabel
我正在尝试为 JLabel 加下划线。我到处寻找,但我什么也没得到。即使在属性中,也没有为 JLabel 加下划线的选项。我能做什么?
【问题讨论】:
标签: java swing netbeans jlabel
JLabel label = new JLabel("Underlined Label");
Font font = label.getFont();
Map<TextAttribute, Object> attributes = new HashMap<>(font.getAttributes());
attributes.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);
label.setFont(font.deriveFont(attributes));
【讨论】:
Map<TextAttribute, Object> attributes = new HashMap<>(font.getAttributes());来避免编译器警告unchecked call to put(k v) (...)。
JLabel label = new JLabel("<HTML><U>YOUR TEXT HERE</U></HTML>");
label.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
或
JLabel label = new JLabel("Underlined Label");
Font font = label.getFont();
Map attributes = font.getAttributes();
attributes.put(TextAttribute.UNDERLINE, TextAttribute.UNDERLINE_ON);
label.setFont(font.deriveFont(attributes));
【讨论】:
initComponents() 不可编辑,我使用的是 Netbeans 8