2016-04-09 13 views
0

私の質問が以前に尋ねられた(申し訳ありませんでしたが) ここに質問です: 私はユーザータイプ1または2のときに長方形と楕円を描きたいと思います。 JAVAと私のコードはここにあります。描画長方形と楕円

package shapes; 
import java.awt.Graphics; 
import javax.swing.JPanel; 
public class shapes extends JPanel 
{ 
    private int choise; 
public shapes (int userchoise) 
{ 
choise=userchoise; 
} 
public void paintcomponent (Graphics g) 
{ 
    super.paintComponent(g); 
    for (int i=0; i<=10; ++i) 
{ 
switch (choise) 
{ 
case 1 : 
g.drawRect(10+i*10, 10+i*10, 50+i*10, 50+i*10); 
break; 
case 2: 
g.drawOval(10+i*10, 10+i*10, 50+i*10, 50+i*10); 
break; 

     } 
    } 
} 
} 

これはメインクラスです:

package shapes; 
import javax.swing.JFrame; 
import javax.swing.JOptionPane; 
public class shapestest { 

public static void main(String[] args) { 
    // TODO Auto-generated method stub 
    String input= JOptionPane.showInputDialog("Please enter 1" 
      + " to drawing rectangel"+"Please enget 2 to drawing oval"); 
    int choise = Integer.parseInt(input); 
    shapes myshape=new shapes (choise); 
    JFrame application = new JFrame(); 
    application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    application.add(myshape); 
    application.setSize(300, 300); 
    application.setVisible(true); 


} 
} 

問題は、私は(タイプ1と2の後)プログラムを実行したときに、私は何を見ることができないです

どのように私はこれを解決するのです問題?私は最終的に問題を解決する方法を見つけ .... ガイズ(@kiheru

のおかげで、このコードが持っている唯一の問題は敏感ちょうど約ケースです:paintcomponentpaintComponentpublic void paintcomponent (Graphics g)と同じものではありませんあなたがもしそう。この変更は、コードが動作します。

+0

コードはjpgではなく、他の人が直接作業できるようにあなたの投稿(コードとしてマーク)のテキストとして含めてください。あなたはそのようにすばやく答えを得るでしょう。 – tfv

+0

クラス名は大文字で始まる必要があります。投稿されたコードは適切にフォーマットされている必要があります。私は正当な左にコードを書いてはいけないと確信していますので、私たちがそのようなコードを読むことを期待しないでください。 – camickr

+0

すみません、私はこれについて新しいです。しかし、私にそれを思い出させるためにそれをより良く感謝するように努力しています。 –

答えて

2
public void paintcomponent (Graphics g) 

使用@Override表記このメソッドの宣言の前に。コンパイルエラーを明らかにします。

それを修正するには、ために大文字を使用します:

@Override 
public void paintComponent (Graphics g) 
+0

私はそれをしましたが、動作しませんでした(このエラーを取り戻してください:タイプシェイプのpaintcomponent(Graphics)メソッドは、スーパータイプメソッドをオーバーライドまたは実装する必要があります –

+0

* "シェイプのpaintcomponent(Graphics)メソッドは、 * 1000マイルの旅は一歩から始まります.2番目のステップは、そのエラーの意味を理解し、それを修正する方法です。 –

+0

よろしくお願い致します。 –

関連する問題