Skip to Main Content

Java SE (Java Platform, Standard Edition)

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

ISSUE IN THE PAINT APPLICATION

843807Aug 13 2010 — edited Aug 16 2010
Hi there,
I am doing Paint application using Dessign Pattern Abstract Factory. So far I have done canvas, stroke, and I could write on it. The problem is I want to create menu in which they will be Rectangle, Circle and so on objects but I do not know how to implement them, so when I click on the bar in the menu, and point somewhere stroke to draw me Rectangle, Circle or anything else. Anyway here is my code I have done, and main problem lays in how to implement that when I click on the bar it gets me a rectangle, circle ....

Here is the code :
 interface ShapesFactory {

    public ShapeInterface createShape();
}
public class RectangleFactory implements ShapesFactory {

    public RectangleFactory() {
    }
    public ShapeInterface createShape() {
       return (ShapeInterface) new Rectangle();
    }

}
public interface ShapeInterface {

    public void createShape(Graphics2D g, int x1, int y1);

}
public class Rectangle implements ShapeInterface{
    public void createShape(Graphics2D g, int x1, int y1) {
        GeneralPath gp = new GeneralPath();
        gp.moveTo(x1, y1);
        gp.lineTo(x1, 20+y1);
        gp.lineTo(30+x1, 20+y1);
        gp.lineTo(30+x1, y1);
        gp.lineTo(x1, y1);
        gp.closePath();
        g.fill(gp);
    }
Now problem is I do not know how to implement that when I click on the rectangle bar it switches to the rectangle, and I can draw with my stroke rectangle anywhere on the canvas. Please, help me.

Edited by: Desperad0s on Aug 13, 2010 11:33 AM

Comments

Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Sep 13 2010
Added on Aug 13 2010
3 comments
1,908 views