0
這個問題是從我previous question的JLabel不顯示HTML正確
跟進我有一個JLabel裏面坐了HTML文本。但是,HTML內容沒有正確顯示。 JLabel應該是26x26像素,並在右下角顯示一個數字。我的代碼似乎沒有在正確的位置顯示數字,其高度似乎被截斷。
這裏是我的代碼:
final String buffBadgeStyles = "<style>"
+ "#container {height:26px; width:26px; background-color: red; position:relative;}"
+ "#bottom {position:absolute; bottom:0; right:0;}"
+ "</style>";
buffSlot_6 = new JLabel();
buffSlot_6.setBorder(new LineBorder(Color.BLACK));
buffSlot_6.setHorizontalAlignment(SwingConstants.CENTER);
buffSlot_6.setVerticalAlignment(SwingConstants.CENTER);
buffSlot_6.setText("<html>"
+ buffBadgeStyles
+ "<body>"
+ "<p id=\"container\"><span id=\"bottom\">2</span></p>"
+ "</body></html>");
buffSlot_6.setFont(new Font("Comic Sans MS", Font.BOLD, 12));
panel_playerBuffs.add(buffSlot_6);
有什麼想法?
1)Swing的HTML/CSS實現是非常基本的。 2)爲了更快地獲得更好的幫助,請發佈[MCVE]或[簡短,獨立,正確的示例](http://www.sscce.org/)。 –
你爲什麼使用HTML。您可以使用標籤的屬性來控制文本位置。閱讀API以瞭解控制文本水平/垂直位置的方法。 – camickr
@camickr因爲我還需要在標籤的中間添加一個背景圖片。 JLabel API不允許字符串重疊圖像。 – Dragneel