//cd c:\HPBasic\Toppage-sample3\MySwing/Omikuji-Jar //javac Omikuji.java //set CLASSPATH=. //appletviewer Omikuji.html //appletviewer Omikuji.java //jar cvf Omikujis.jar *.class *.jpg import java.applet.*; import java.awt.*; import java.awt.event.*; import java.net.*; import javax.swing.*; /* */ public class Omikuji extends JApplet implements ActionListener { JLabel label1; public void init(){ Container pane = getContentPane(); String html1="
"; JButton uranai = new JButton(html1 + "あなたの運勢は?"); uranai.addActionListener(this); pane.add(uranai,BorderLayout.WEST); label1 = new JLabel(""); pane.add(label1,BorderLayout.EAST); MyPanel panel=new MyPanel(); Dimension d =new Dimension(600,412); panel.setPreferredSize(d); pane.add(panel,BorderLayout.SOUTH); } public void actionPerformed(ActionEvent event) { String[] omikuji = {"大吉","吉","小吉","小凶","凶","大凶"}; int n = (int)Math.floor(Math.random()*6); String message = " すべてうまくいくが、調子に乗らぬこと"; String message1 = " 小さな喜び事あり。争いを避けること"; String message2 = " これからが肝心。今の調子でがんばれ"; String message3 = " 思わぬところに落とし穴が。用心すべし"; String message4 = " 何事も辛抱"; String message5 = " 今が最悪期。これから徐々に運が上向く"; String html2=""; String html3="";
switch (n) {
case 0: label1.setText(html2 + omikuji[0] + html3 + message); break;
case 1: label1.setText(html2 + omikuji[1] + html3 + message1); break;
case 2: label1.setText(html2 + omikuji[2] + html3 + message2); break;
case 3: label1.setText(html2 + omikuji[3] + html3 + message3); break;
case 4: label1.setText(html2 + omikuji[4] + html3 + message4); break;
case 5: label1.setText(html2 + omikuji[5] + html3 + message5); break;
}
}
class MyPanel extends JPanel {
public void paintComponent(Graphics g) {
super.paintComponent(g);
java.awt.Image image = getImage(getCodeBase(),getParameter("file"));
// java.awt.Image image =getImage(getDocumentBase(),getParameter("file"));
g.drawImage (image,0,0,this);
}
}
}
/*
結論
c:\HPBasic\Toppage-sample3\Java-menue.htmlでは、MySwingのOmikuji.java とOmikuji2.java を併用。
Omikuji.javaでできたと思ったが、アップしたもので見ると、まただめになった。
java.lang.NoSuchMethodError: MyPanel.