1

Jframe 内に JPanel があります。paint(Graphics g) メソッドを使用して、JPanel 内に線を描画したいと思います。しかし、それは機能していません。この問題について誰か助けてください。これがコードです。よろしくお願いします。

import java.awt.Color;

import java.awt.Graphics;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.SwingUtilities;

public class JavaGraph {

JPanel myPanel;

public JPanel createPanel()
{

    myPanel=new JPanel();
    myPanel.setLayout(null);
    //myPanel.setBackground(Color.black);
    return myPanel;

}
public static void  display()
{
    JFrame frame=new JFrame();
    JavaGraph j=new JavaGraph();
    frame.add(j.createPanel());
    frame.setVisible(true);
    frame.setSize(400,400);
    }

public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable()
            {
        public void run()
        {
            display();
        }
            });
}

}

4

1 に答える 1

1

するでしょう

あなたはしないだろう

  • myPanel.setLayout(null);Null レイアウトを使用する

  • frame.setSize(400,400);forなど、JFrame( )はそのコンテナに適切な値を返すように指定されているため、コンテナの適切なサイズをピクセル単位で計算して決定しますJPanelJComponentsoverride getPreferredSizeDimensionJFrame.pack(before JFrame.setVisible)

  • frame.setVisible(true);が呼び出された後、Swing GUI を設定、変更、または初期化するコードを呼び出す

于 2013-10-08T15:35:41.177 に答える