954,549 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Applet Help

I have to write this applet for my CIT 130 class. I understand that you can not give solutions nor do I want you to do my homework for me I just need some pointers. The questions ask to "Write an applet that draws a house with it's door and windows open... Now when the user clicks on the door or windows they should close." I have been able to do this much:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

/**
* To draw a house and when the user clicks on the door or windows they close.
*
* @author Chris Darlak
* @version 12/01/2005
*/
public class HouseApplet extends JApplet
{
// instance variables - replace the example below with your own
private int x;

/**
* Called by the browser or applet viewer to inform this JApplet that it
* has been loaded into the system. It is always called before the first
* time that the start method is called.
*/
public void init()
{
// Set the background color to white.
getContentPane().setBackground(Color.white);

// Add a mouse listener to this applet.
addMouseListener(new MyMouseListener());
}
/**
* Paint method for applet.
*
* @param g the Graphics object for this applet
*/
public void paint(Graphics g)
{
// Call the superclass paint method.
super.paint(g);

// Draw the house.
g.setColor(Color.black);
g.drawRect(100, 100, 200, 100);

// Draw the left window open.
g.fillRect(120, 130, 40, 40);

// Draw the right window open.
g.fillRect(240, 130, 40, 40);

// Draw the door open.
g.fillRect(180, 130, 40, 70);

// Draw the entire roof.
g.drawLine(80, 100, 320, 100);
g.drawLine(80, 100, 200, 40);
g.drawLine(200, 40, 320, 100);

// Draw the left window closed.
g.setColor(Color.white);
g.fillRect(120, 130, 40, 40);
g.setColor(Color.black);
g.drawRect(120, 130, 40, 40);
g.drawLine(140, 130, 140, 170);
g.drawLine(120, 150, 160, 150);

// Draw the right window closed.
g.setColor(Color.white);
g.fillRect(240, 130, 40, 40);
g.setColor(Color.black);
g.drawRect(240, 130, 40, 40);
g.drawLine(260, 130, 260, 170);
g.drawLine(240, 150, 280, 150);

// Draw the door closed.
g.setColor(Color.white);
g.fillRect(180, 130, 40, 70);
g.setColor(Color.black);
g.drawRect(180, 130, 40, 70);
g.fillOval(210, 165, 07, 07);
}
private class MyMouseListener extends MouseAdapter
{
public void mouseClicked(MouseEvent e)
{
// Repaint the window.
repaint();
}
}
}
everythings lined up in my program just pasting it messed the indentation up. My question is above on the mouse adapter. I really do not understand how to make it replace the open windows and door with the closes ones when each is clicked. I currently have it painting the open version then painting right over with the closes and the mouse click is just set to repaint the whole house but I really have no clue on how to go about implementing a solution. The graphics are done I just need to program the mouse click to replace the windows and door plus you have to click in the area that the windows/door are in to change the picture so it has to have some kind of area restrictions. Also it would be able to keep opening and closing the door/windows every click. Should I use a loop or an array maybe both? Any help would be much appreciated. Thank You.

cjd_1986
Newbie Poster
3 posts since Dec 2005
Reputation Points: 10
Solved Threads: 0
 

Did you ever figure out the solution to this? I am in the same boat as you and dont know where to go from here.

ttunstall07
Newbie Poster
9 posts since Feb 2010
Reputation Points: 10
Solved Threads: 0
 

Chris, I just copied and pasted your class to Textpad and tried to compile it and it doesn't. It keep saying identifier expected and illegal character(2 errors) I am in CIT-130 now and trying to write house applet but have no clue how to do it.

Valeriya
Newbie Poster
2 posts since Dec 2010
Reputation Points: 10
Solved Threads: 0
 
Did you ever figure out the solution to this? I am in the same boat as you and dont know where to go from here.


Did you ever write this applet? Please help me out. :)

Valeriya
Newbie Poster
2 posts since Dec 2010
Reputation Points: 10
Solved Threads: 0
 
Did you ever figure out the solution to this? I am in the same boat as you and dont know where to go from here.


Yep a very long time ago.

cjd_1986
Newbie Poster
3 posts since Dec 2005
Reputation Points: 10
Solved Threads: 0
 
Chris, I just copied and pasted your class to Textpad and tried to compile it and it doesn't. It keep saying identifier expected and illegal character(2 errors) I am in CIT-130 now and trying to write house applet but have no clue how to do it.


Should compile if your class' named the same and all. Did that proj 6 years ago lol.

cjd_1986
Newbie Poster
3 posts since Dec 2005
Reputation Points: 10
Solved Threads: 0
 

This question has already been solved

Post: Markdown Syntax: Formatting Help
You