JPanelでの描画の表示に問題があります。次のように相互にリンクする3つのクラスを作成しました。なぜこのコードが私の図面を表示しないのか疑問に思いました。
c.add(pDraw);
pDraw.add(draw);
1)メイン
public class mainPage {
public static void main(String[]args){
JFrame appFrame = new Frame();
appFrame.setVisible(true);
appFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
2)JFRAME
public class Frame extends JFrame implements ActionListener{
private drawingBoard draw;
public Frame (){
draw = new drawingBoard(); //generate pattern
GridBagLayout m = new GridBagLayout();
Container c = (Container)getContentPane();
c.setLayout (m);
GridBagConstraints con;
.......
JPanel pDraw = new JPanel();
pDraw.setPreferredSize(new Dimension(500,500));
.....
c.add(pDraw);
pDraw.add(draw); // Call other class for drawing
.....
setResizable(false);
pack();
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
}
3)JPANEL
public class drawingBoard extends JPanel {
.....
public void paint(Graphics g) {
......
}
}