0

Jlabel で複数行を表示するのに問題があります。HTMLタグを使用しようとしましたが、役に立ちませんでした。次のコードが機能しないのはなぜだろうか。<br>タグを使用し、1行で表示されるまで。助けてください...

私のJavaコードは次のとおりです

package p1;
import javax.swing.*;
import java.awt.*;

public class MemoryUtil 
{
    private static final int MegaBytes = 10241024;

    public static void main(String args[])
    {

        long freeMemory = Runtime.getRuntime().freeMemory()/MegaBytes;
        long totalMemory = Runtime.getRuntime().totalMemory()/MegaBytes;
        long maxMemory = Runtime.getRuntime().maxMemory()/MegaBytes;

        String data="";
        data= data + " <html> JVM Free Memory:  " + Long.toString(freeMemory)+" MB <br>";
        data=data + "Initial Heap Size of JVM : "+ Long.toString(totalMemory) +" MB <br>";
        data= data + " Maximum Heap Size  <br>of JVM: " + Long.toBinaryString(maxMemory) +" MB </html>";
        createAndShowGUI(data); 
    }

    private static void createAndShowGUI(String input) 
    {       
        JFrame frame = new JFrame("JVM Setting of your Machine ");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setLayout( new GridLayout());
        frame.setSize(new Dimension(450, 400));
        frame.setLocation(new Point(400, 200));
        frame.setResizable(true);

        JLabel label = new JLabel(input);
        label.setFont(new Font("Serif", Font.BOLD, 20));
        label.setHorizontalAlignment(JLabel.CENTER);     
        frame.add(label);        
        frame.setVisible(true);
    }   
}
4

2 に答える 2

1

の前に空白があり<HTML>ます。それを削除すると動作します:data= data + "<html> JVM

于 2013-04-28T10:08:55.443 に答える
1
data + " <html> JVM Free Memory:  "

次の行に沿ったものにする必要があります。

"<html><body>JVM Free Memory:  "
  1. <html>要素が の最初の部分である必要がありStringます。
  2. <body>ベスト プラクティスは、プレフィックスを追加して有効な HTML にすることです。
于 2013-04-28T10:11:52.123 に答える