Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- import java.awt.*;
- import java.awt.event.*;
- import javax.swing.*;
- /**
- *
- * @author Compsci
- */
- public class HouseApplet extends JApplet {
- int[] roofX = { 10, 210, 410 };
- int[] roofY = { 110, 10, 110 };
- boolean leftWOpen = true;
- boolean rightWOpen = true;
- boolean doorOpen = true;
- public void paint(Graphics g) {
- super.paint(g);
- g.setColor(Color.BLACK);
- g.drawPolygon(roofX, roofY, 3); // draw the roof
- g.drawRect(15, 110, 390, 175); // draw the body
- if (doorOpen)
- g.drawRect(165, 185, 100, 100); // draw the door
- else {
- g.fillRect(165, 185, 100, 100);
- }
- if (leftWOpen) {
- g.drawRect(50, 150, 75, 75); // draw left window
- g.drawLine(85, 150, 85, 225);
- g.drawLine(50, 190, 125, 190);
- } else
- g.fillRect(50, 150, 75, 75);
- if (rightWOpen) {
- g.drawRect(300, 150, 75, 75); // draw right window
- g.drawLine(340, 150, 340, 225);
- g.drawLine(300, 190, 375, 190);
- } else
- g.fillRect(300, 150, 75, 75);
- }
- public void init() {
- addMouseListener(new MyMouseListener());
- }
- private class MyMouseListener implements MouseListener {
- @Override
- public void mouseClicked(MouseEvent e) {
- System.out.println("X: " + e.getX() + ", Y: " + e.getY());
- if (doorOpen && e.getX() >= 165 && e.getX() <= 265 &&
- e.getY() >= 185 && e.getY() <= 285) {
- doorOpen = false;
- repaint();
- }
- else if (!doorOpen && e.getX() >= 165 && e.getX() <= 265 &&
- e.getY() >= 185 && e.getY() <= 285){
- doorOpen = true;
- repaint();
- }
- if (leftWOpen && e.getX() >= 50 && e.getX() <= 125 &&
- e.getY() >= 150 && e.getY() <= 225) {
- leftWOpen = false;
- repaint();
- }
- else if (!leftWOpen && e.getX() >= 50 && e.getX() <= 125 &&
- e.getY() >= 150 && e.getY() <= 225) {
- leftWOpen = true;
- repaint();
- }
- if (rightWOpen && e.getX() >= 300 && e.getX() <= 375 &&
- e.getY() >= 150 && e.getY() <= 225) {
- rightWOpen = false;
- repaint();
- }
- else if (!rightWOpen && e.getX() >= 300 && e.getX() <= 375 &&
- e.getY() >= 150 && e.getY() <= 225) {
- rightWOpen = true;
- repaint();
- }
- }
- @Override
- public void mousePressed(MouseEvent e) {
- }
- @Override
- public void mouseReleased(MouseEvent e) {
- }
- @Override
- public void mouseEntered(MouseEvent e) {
- }
- @Override
- public void mouseExited(MouseEvent e) {
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment