0

私は現在、フリーハンドでの描画と、描画された各波線の移動と削除を可能にする Java アプリケーションを作成しようとしています。

私の最善の策は、クリックしてドラッグするたびに個別のエンティティを作成することだと思いますが、これを実装する方法がわかりません。これまでのところ、Oracleチュートリアルの助けを借りて「ブラシ」を表示する小さなJFrameしかありませんが、このブラシが描く線さえありません。

class MyPanel extends JPanel {

    private int ovalX = 50;
    private int ovalY = 50;

    public MyPanel() {
        setBorder(BorderFactory.createLineBorder(Color.black));

        addMouseListener(new MouseAdapter() {
            public void mousePressed(MouseEvent e) {
                moveSquare(e.getX(),e.getY());
            }
        });

        addMouseMotionListener(new MouseAdapter() {
            public void mouseDragged(MouseEvent e) {
                moveSquare(e.getX(),e.getY());
            }
        });
    }

    private void moveSquare(int x, int y) {
        int OFFSET = 1;
        if ((ovalX!=x) || (ovalY!=y)) {
            ovalX=x;
            ovalY=y;
            repaint();
        } 
    }

    public Dimension getPreferredSize() {
        return new Dimension(250,200);
    }

    public void paintComponent(Graphics g) {
        super.paintComponent(g);       


        g.setColor(Color.BLACK);
        g.fillOval((ovalX - 5),(ovalY - 5),10,10);
    }  
}

どうやって続けたらいいのかわからない。最初にいくつかの一般的なチュートリアルを使用する必要がありますか? もしそうなら、どの主題についてですか?

4

1 に答える 1

3

役立つさまざまな主題に関するものはほとんどありません。コア/基本的なものには次のものがあります

私はあなたが感謝する必要があることをお勧めします

キーバインディングやマウスリスナーなどについて説明しているので、JFC/Swing を使用した GUI の作成をスローします。

また、画像の保存と読み込みも間違いなく必要になるため、画像の操作にも慣れてきました。

于 2012-11-27T08:32:24.507 に答える