JPanelで宣言したメソッドについて
JPanelを継承したクラスで、引数をもらってその引数を表示するメソッドを作成します。そして別のJFrameを継承したクラスの中で、さきほど作成したメソッドを利用したいのですが、どうすればできるのでしょうか?そもそもこのやり方できちんと表示されるのでしょうか?
ぜひともご教授のほど宜しくお願いします。
以下はプログラムになります。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
class Ptest extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawString("よろしく", 50, 50);
}
public void draw(String s) {
Graphics g = getGraphics();
g.drawString(s, 100, 100);
}
}
class Ftest extends JFrame {
JLabel jlb;
public Ftest() {
setSize(350, 300);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
Container c = getContentPane();
Ptest p = new Ptest();
p.draw("yoroshiku");
c.add(p);
p.setLayout(null);
jlb = new JLabel("frame");
p.add(jlb);
jlb.setBounds(70, 70, 50, 50);
}
}
public class Test1 {
public static void main(String[] args) {
JFrame w = new Ftest();
w.show();
}
}
お礼
早速のご回答ありがとうございます。 とても分かりやすく、助かりました。