Javaプログラムで図が表示されず終わらず実行がおかしい

このQ&Aのポイント
  • Javaのプログラムで図が表示されず、終了しない問題について質問です。
  • 質問のコードを見ましたが、プログラムが正常にコンパイルできるものの、図が表示されないです。
  • どこを修正したら図を表示させることができるでしょうか。お尋ねします。
回答を見る
  • ベストアンサー

これを正確に実行したいのですが

再びすみません。 下のプログラムなのですが。コンパイルはできるのに 図が表示されず、終わらず、実行がおかしなことになってしまいます。どこを直したらいいのでしょうか? お願い致します。 import java.awt import java.awt.event.*; class gazou extends Frame { public gazou(){ setSize(300,200); addWindowListener(new WindowAdapter( ) public void windowClosing(WindowEvent e) System.exit(0); } }); } public void paint(Graphics g) g.drawRect(40,40,50,50); g.drawRoundRect(100,40,50,50,10,10); g.drawOval(160,40,50,50); g.drawArc(220,40,50,50,45,270); g.fillRect(40,100,50,50); g.fillRoundRect(100,100,50,50,10,10); g.fillOval(160,100,50,50); g.fillArc(220,100,50,50,45,270); g.drawLine(40,180,260,180); } } public class kadai19{ public static void main(String[] args) { Frame w = new Frame(); w.show( ); } }

  • Java
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • love-less
  • ベストアンサー率60% (9/15)
回答No.1

え~と、書き間違えとかないですか? このままだとそもそもコンパイル自体通りそうにないと思うんですが・・・ あと、書き間違いがなくてコンパイル通っても >図が表示されず、終わらず、実行がおかしなことになってしまいます。 こうなるのはKadai19クラスに原因がありますね。 それがなぜかわからないというのであれば インスタンスの生成について復習したほうがいいかもしれません。

megumi0808
質問者

お礼

すみません、いろいろ消してしまって間違いだらけですね。 Frame w = new Frame(); のところがnew gazou();だったんですね 無事にできました^^ ありがとうございます!

関連するQ&A

  • 簡単なこーどですが、エラーの原因が分かりません

    今晩は、JAVAの初心者です、宜しくお願いします。 下のコードでエラーがでます、いくら考えても原因がさっぱり分かりません。 一体何処が悪いのでしょうか、宜しくお願いします。 また、最後の「j.show();」では警告が出ています。 何が原因でしょう?? ============================================================ import java.awt.Graphics; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.awt.event.WindowListener; import javax.swing.JFrame; class JFrame_Ohayou extends JFrame implements WindowListener{ /*********** コンストラクタ ********************/ public JFrame_Ohayou(){ setSize(400,300); setTitle("JFrameのテスト"); addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); } /******************* paint ***********************/ public void paint(Graphics g){ super.paint(g); g.drawString("おはよう",20,40); } } /******************* main ***********************/ public class JFrameTest{ public static void main(String[] args){ JFrame_Ohayou j = new JFrame_Ohayou(); j.show(); } } =============================================================

    • ベストアンサー
    • Java
  • フレームを表示できないのですが・・・

    こんにちは。ジャバ初心者です。下記のプログラムを javac Sample120.java と入力してコンパイルはできたのですが java Sample120 と入力すると Exception in thread "main" java.lang.NoClassDefFoundError: Sample120 というメッセージが出て実行できないのですがどのようにすればいいですか? import java.awt.*; import java.awt.event.*; class Sample120 extends Frame { public static void main(String args[]) { Sample120 app = new Sample120(); } public Sample120() { setSize(250,100); setVisible(true); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } public void paint(Graphics g) { g.drawString("Hello Java AWT!",10,60); } }

    • ベストアンサー
    • Java
  • 別クラスのスレッドによるpaint()が上手くいきません!!

    たびたびすみません、、、今度は別のクラスに記述したpaint()をメインでスレッド起動しても描写されません…オーバーライドか何かしなければいけないらしい情報を探し当てた気がするのですが、いまいちよくわかりません。。どうすればいいのでしょうか? 下に自分で作ってみたソースの抜粋を書きます。 import java.awt.*; import java.awt.event.*; class test extends Frame { subclass sc = new subclass(); Thread th=new Thread(sc); public static void main(String args[]) { test t=new test(); } public test() { setTitle("Test"); setSize(300,200); setVisible(true); th.start(); //閉じる addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } } class subclass extends Frame implements Runnable { int i; public void run() { for(i=0;i<100;i++) { repaint(); } try { Thread.sleep(1000); } catch(InterruptedException e){} } public void paint(Graphics g) { g.drawOval(i,i,50,50); } } (EOS) どうか教えていただける方、お願いします!!

  • 実行してもタイトルバーしか表示されません

     JAVAの初心者です。  "Public JFramelTest(){"の箇所で"メソッドの戻りの型がありません"とエラーがでます。  しかし実行はできるので、実行するとダイヤログは表示されますが、タイトルバーのみしか、表示されません。  サイズを大きくすると文字はかけていますが、タイトルバーには"JFrame Test"の文字は有りません。  一体どこが悪いのでしょうか宜しくお願いします。 ============================================================================= //JFrameTest:Swingのフレーム import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JFrameTest extends JFrame{ /* コンストラクタ */ public JFramelTest(){ setSize(800,400); //画面サイズ setTitle("JFrame Test"); //タイトル //×ボタンで終了 addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); } //paint public void paint(Graphics g){ super.paint(g); //JFrameクラスのpaintの呼出し g.drawString("JAVA",80,100); } //main public static void main(String[] args) { JFrame w = new JFrameTest(); w.show(); } }

    • ベストアンサー
    • Java
  • Javaのエラーなのですが

    import java.awt.*; import java.awt.event.*; class PrefFrame extends Frame { public PrefFrame(String title) { //フレームのタイトル setTitle(title); //ウィンドウを閉じる時 addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); } } public class PrefTest { public static void main(String args[]) { PrefFrame frm = new PrefFrame("都道府県マスター"); frm.setLocation(300, 200); frm.setSize(250, 350); frm.setBackground(Color.LIGHT_GRAY); frm.setVisible(true); } } と入力しました。コンパイルは出来て、CLASSファイルは作成できたのですが、実行できずにエラーException in thread "main" java.lang.NoClassDefFoundError: PrefTest/javaとなってしまいます。実行するためにはどうしたらよいのでしょうか?

  • Javaプログラムの繋げ方について。

    Javaプログラムの繋げ方について。 今まで(1)のようなプログラムを書いていました。 作りたいものに向けて色々検索するとやりたいものに近い(2)のようなサンプルプログラムを見つけました。 しかし、Java初心者なもので混ぜ方(?)がわかりません。 現在の私の知識からいうと今までのはアプレットでフレーム使うのはアプリケーションなのかな?別物なのかな?そんな感じです。 もし、混ぜることができるなら何かアドバイスをお願いします。 (1)package test; import java.applet.* ; import java.awt.Label ; import java.awt.Font ; import static java.awt.Font.BOLD ; import java.util.*; import java.awt.Graphics; import java.awt.Image; import java.awt.*; public class test extends Applet{ public void paint(Graphics g){ g.setColor(Color.red); g.fillOval(320, 200, 100, 100); } public void init () { ~~~~~~~~~~~~~~~~ } public void start () { ------------ }}} (2)import java.awt.*; import java.awt.event.*; public class MouseEvent7 extends Frame { int posX = 50; int posY = 50; public static void main(String [] args){ new MouseEvent7(); } //コンストラクタ MouseEvent7(){ this.addWindowListener(new WinAdapter()); //ウィンドウリスナーの登録 this.setSize(200,200); this.setVisible(true); //MouseMotionListenerの登録 addMouseMotionListener( new MouseMotionAdapter(){ public void mouseMoved(MouseEvent e){ posX = e.getX(); posY = e.getY(); repaint(); //paintメソッドを実行 } } ); } public void paint(Graphics g){ g.drawOval(posX,posY,50,50); } } (1)の内容に本当に(2)のプログラムで出来るマウスの動きに合わせて円も動く+クリックしたらそこで止まるだけいいのですが。 出来たら止まった点の座標も取りたいですが、そこまではいってません;;

  • java初心者です

    空のウィンドウを作ってみたものの ウィンドウが閉じれません。ファイル名はMyApp3.javaです。クラスファイルは3つちゃんとできてます import java.awt.*; import java.awt.event.*; class MyFrame extends Frame { public MyFrame(){ addWindowListener(new MyWindowAdapter()); } class MyWindowAdapter extends WindowAdapter { public void WindowClosing(WindowEvent e){ System.exit(0); } } } public class MyApp3 { public static void main(String[] args){ MyFrame f =new MyFrame(); f.setSize(300,200); f.setVisible(true); } }

    • ベストアンサー
    • Java
  • getDocumentBase() でエラーがでます

    getDocumentBase() でエラーがでます 下のように書いているのですが getDocumentBase() でエラーがでて困っています 他のところは動いてて それに追加しました 何が原因なのでしょうか? import java.awt.*; import java.awt.event.*; import java.applet.Applet; public class window { public static void main( String[] args ) { AppFrame f = new AppFrame(); image i = new image(); i.init(); f.setSize( 200, 200 ); f.addWindowListener( new WindowAdapter() { public void windowClosing( WindowEvent e) { System.exit(0); } } ); // f.show(); f.setVisible( true ); } } class image extends Applet { Image image; image() { } public void init() { image = getImage( getDocumentBase(), "image.jpg" ); } ...

  • java アプレットでエラー

    以下のサンプルソースをEclipse上で実行したら "アプレットは初期化されていません"というエラーになってしまいました。 //フレームウィンドウの表示/非表示を切り替える。 import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class Sample129 extends Applet implements ActionListener { Button bt; frame fr; public void init() { bt = new Button("ウィンドウ表示"); add(bt); bt.addActionListener(this); fr = new frame("操作対象ウィンドウ"); fr.setSize(250,120); } public void actionPerformed(ActionEvent event) { //ウインドウを表示 fr.setVisible(true); } } class frame extends Frame { frame(String title) { super(title); addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { //ウインドウを非表示 setVisible(false); } }); } public void paint(Graphics g) { g.drawString("閉じるボタンで非表示",65,65); } } ■エラー内容 java.lang.NoSuchMethodError: frame: method <init>(Ljava/lang/String;)V not found at Sample129.init(Sample129.java:17) at sun.applet.AppletPanel.run(Unknown Source) at java.lang.Thread.run(Unknown Source) どうすればこのエラーが解消できるのでしょうか。

  • 自作ウィンドウを閉じる方法について

    只今、これならわかるJAVAという書籍でウィンドウを生成し、×ボタンがクリックされたら、ウィンドウを閉じる(プログラムを終了する)ようなプログラムを作っているのですが、書籍通りに記述しているのですが、×ボタンをクリックしてもウィンドウが閉じません。ソースは、 import java.awt.*; import java.awt.event.*; //ウィンドウを表すクラスFrameを継承し、自作のウィンドウを表すクラスを作成する public class EventDispose extends Frame{ public EventDispose() { addWindowListener(new MyWindowAdapter()); } class MyWindowAdapter extends WindowAdapter{ public void WindowClosing(WindowEvent e) { System.exit(0); } } } です、。表示を行っているクラスが、 public class MyWinApp { public static void main(String[] args) { //自作のウィンドウの生成(コンストラクタの実行) EventDispose ed = new EventDispose(); //ウィンドウのサイズの指定 ed.setSize(300,200); //生成したウィンドウを可視状態にする ed.setVisible(true); } } です。開発環境はeclipseの3.4です。 どうかご教授よろしくお願い致します。

    • ベストアンサー
    • Java

専門家に質問してみよう