###前提・実現したいこと
btn [0][1][2]をクリックすると、それに対応した国旗が表示されるようにしたい。
###ソースコード
import java.awt.;
import java.awt.event.;
class ColorButton extends Frame implements ActionListener{
Button[] btn;
String[] ttl={"Germany","Indonesia","Romania","Exit"};
final int N=4;
ColorButton(String s, int w, int h){ super(s); int i; setSize(w,h); btn=new Button[N]; for(i=0;i<N;i++){ btn[i]=new Button(ttl[i]); btn[i].addActionListener(this); } Panel p=new Panel(); for(i=0;i<N;i++) p.add(btn[i]); p.setBackground(Color.pink); add(p,BorderLayout.SOUTH); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e){ System.exit(0);} }); } public void actionPerformed(ActionEvent e){ if(e.getSource()==btn[0]){ }else if(e.getSource()==btn[1]){ }else if(e.getSource()==btn[2]){ }else{ System.exit(0); } } int radius=30,width=250,height=75; public void paint(Graphics g){ g.setColor(Color.red); g.fillRect(30,60,width,height); g.setColor(Color.white); g.fillRect(30,130,width,height); g.setFont(f); g.setColor(Color.darkGray); g.drawString("Indonesia",50,240); width=width/3;height=height*2; g.setColor(Color.blue); g.fillRect(300,60,width,height); g.setColor(Color.yellow); g.fillRect(300+width,60,width,height); g.setColor(Color.red); g.fillRect(300+width*2,60,width,height); g.setFont(f); g.setColor(Color.darkGray); g.drawString("Romania",300,240); width=width*3;height=height/3; g.setColor(Color.black); g.fillRect(570,60,width,height); g.setColor(Color.red); g.fillRect(570,60+height,width,height); g.setColor(Color.yellow); g.fillRect(570,60+height*2,width,height); g.setFont(f); g.setColor(Color.darkGray); g.drawString("Germany",570,240); } public static void main(String[] args){ ColorButton a=new ColorButton("National flag",300,200); a.setVisible(true); }
}
###補足情報(言語/FW/ツール等のバージョンなど)
Javaです。よろしくお願い致します。
何が問題なのでしょうか? アプレットのプログラムと思われますが、import java.applet.Applet; import javax.swing.*;が見当たらないのは気になります。 また、アプレットの動作確認をする方法はご存知ですか? 確認に使うブラウザがjavaとappletの使用を許可しているか確認なさいましたか?
コマンドプロンプトを用いてコンパイルする時点でエラーが出てしまいます。
g.setfont(f); という箇所に対して「シンボルを見つけられません」と表示されます。
こちらの質問が他のユーザから「質問の範囲が広すぎる」という評価を受けています
わからない点を明確にし、調査したこと・試したことと共に記入していただくと、回答が得られやすくなります。
graphicsオブジェクトのフォントを設定するメソッド名は、setFontです。setfontというメソッドは無いのでコンパイルエラーになっています(4文字目が小文字のfではなく、大文字のFが正しい)。javaは大文字/小文字を区別しますから、大文字/小文字も間違えないように注意してください。
回答2件
あなたの回答
tips
プレビュー
