2

ここで何が間違っているのか考えてみてください.JFrameに2つの長方形が表示されるはずですが、灰色のボックスしか表示されません。したがって、私のコードには四角形、色、または何も応答しません。

main メソッドを持つクラスは次のとおりです。

import javax.swing.JFrame;
public class Paron {

    public static void main(String[] args) {

      JFrame f = new JFrame("Rektanglar");
      f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      Rektanglar r = new Rektanglar ();
      f.add(r);
     f.setSize(400, 250);
      f.setVisible(true);

    }
}

ここに私のJPanelコードがあります:

import java.awt.Color;
import java.awt.Graphics;
import javax.swing.JPanel;

public class Rektanglar extends JPanel {

    public void PaintComponent (Graphics g) {
       super.paintComponent (g);
       this.setBackground(Color.WHITE);

       g.setColor(Color.BLUE);
       g.fillRect(25,25, 100, 100);
       g.setColor(Color.RED);
       g.fillRect(40,40,100,100);

    }
}

私は何が欠けていますか?助けてくれてありがとう

4

2 に答える 2

5

そうでpaintComponentはありませんPaintComponent。Java では大文字と小文字が区別されます。

@Override
public void paintComponent(Graphics g) {

注釈を追加して@Override、コンパイラがメソッドの存在をチェックできるようにします。

于 2013-07-14T12:41:53.490 に答える
0
public void PaintComponent (Graphics g) {

pforはPaintComponent小文字でなければなりません:

public void paintComponent (Graphics g) {
于 2013-07-14T12:41:47.583 に答える