Advertisement
Guest User

Untitled

a guest
Nov 20th, 2017
64
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.10 KB | None | 0 0
  1. package at.fhooe.mcm;
  2.  
  3. import java.awt.*;
  4. import java.awt.event.*;
  5. import java.awt.image.BufferedImage;
  6.  
  7. public class DrawingWindow implements WindowListener, ItemListener, MouseListener{
  8.  
  9.     private DrawingPanel drawingPanel;
  10.     private boolean isRectangle;
  11.     private boolean isLine;
  12.     private boolean isDashedRectangle;
  13.     private boolean isDashedLine;
  14.     private Point prev = null;
  15.  
  16.     public DrawingWindow(){
  17.         Frame frame = new Frame();
  18.         frame.setSize(640, 480);
  19.         frame.setLayout(new BorderLayout());
  20.  
  21.         drawingPanel = new DrawingPanel();
  22.         drawingPanel.setBackground(Color.LIGHT_GRAY);
  23.  
  24.         frame.add(drawingPanel, BorderLayout.CENTER);
  25.         frame.addWindowListener(this);
  26.  
  27.         CheckboxGroup groupCheckBox = new CheckboxGroup();
  28.  
  29.         Checkbox rect = new Checkbox("Rectangle", groupCheckBox, true);
  30.         Checkbox line = new Checkbox("Line", groupCheckBox, false);
  31.         Checkbox dashedLine = new Checkbox("Dashed line", groupCheckBox, false);
  32.         Checkbox dashedRectangle = new Checkbox("Dashed rectangle", groupCheckBox, false);
  33.         isRectangle = true;
  34.  
  35.         rect.addItemListener(this);
  36.         line.addItemListener(this);
  37.         dashedLine.addItemListener(this);
  38.         dashedRectangle.addItemListener(this);
  39.         drawingPanel.addMouseListener(this);
  40.  
  41.         drawingPanel.add(rect);
  42.         drawingPanel.add(line);
  43.         drawingPanel.add(dashedLine);
  44.         drawingPanel.add(dashedRectangle);
  45.         frame.setVisible(true);
  46.     }
  47.  
  48.     @Override
  49.     public void itemStateChanged(ItemEvent e) {
  50.         if (e.getStateChange() == ItemEvent.SELECTED){
  51.             Checkbox checkBox = (Checkbox) e.getSource();
  52.  
  53.             if (checkBox.getLabel() == "Rectangle"){
  54.                 isRectangle = true;
  55.                 isLine = false;
  56.                 isDashedRectangle = false;
  57.                 isDashedLine = false;
  58.             }else if(checkBox.getLabel() == "Line"){
  59.                 isLine = true;
  60.                 isRectangle = false;
  61.                 isDashedLine = false;
  62.                 isDashedRectangle = false;
  63.             }else if (checkBox.getLabel() == "Dashed line"){
  64.                 isDashedLine = true;
  65.                 isLine = false;
  66.                 isRectangle = false;
  67.                 isDashedRectangle = false;
  68.                 System.out.println(isDashedLine);
  69.             }else if (checkBox.getLabel() == "Dashed rectangle"){
  70.                 isDashedRectangle = true;
  71.                 isDashedLine = false;
  72.                 isLine = false;
  73.                 isRectangle = false;
  74.                 System.out.println(isDashedRectangle);
  75.             }else{
  76.                 System.out.println("other");
  77.             }
  78.         }
  79.     }
  80.  
  81.     @Override
  82.     public void windowOpened(WindowEvent e) {
  83.  
  84.     }
  85.  
  86.     @Override
  87.     public void windowClosing(WindowEvent e) {
  88.         System.exit(0);
  89.     }
  90.  
  91.     @Override
  92.     public void windowClosed(WindowEvent e) {
  93.  
  94.     }
  95.  
  96.     @Override
  97.     public void windowIconified(WindowEvent e) {
  98.  
  99.     }
  100.  
  101.     @Override
  102.     public void windowDeiconified(WindowEvent e) {
  103.  
  104.     }
  105.  
  106.     @Override
  107.     public void windowActivated(WindowEvent e) {
  108.  
  109.     }
  110.  
  111.     @Override
  112.     public void windowDeactivated(WindowEvent e) {
  113.  
  114.     }
  115.  
  116.     @Override
  117.     public void mouseClicked(MouseEvent e) {
  118.         if (isRectangle){
  119.             int x = e.getX();
  120.             int y = e.getY();
  121.             drawingPanel.drawRectangle(x,y);
  122.         }else if(isLine){
  123.             if (prev == null){
  124.                 prev = e.getPoint();
  125.             }else{
  126.                 drawingPanel.drawLine(prev, e.getPoint());
  127.                 prev = null;
  128.             }
  129.         }else if (isDashedLine){
  130.             System.out.println(isDashedLine);
  131.         }
  132.         drawingPanel.repaint();
  133.     }
  134.  
  135.     @Override
  136.     public void mousePressed(MouseEvent e) {
  137.  
  138.     }
  139.  
  140.     @Override
  141.     public void mouseReleased(MouseEvent e) {
  142.  
  143.     }
  144.  
  145.     @Override
  146.     public void mouseEntered(MouseEvent e) {
  147.  
  148.     }
  149.  
  150.     @Override
  151.     public void mouseExited(MouseEvent e) {
  152.  
  153.     }
  154. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement