Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2020
101
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.77 KB | None | 0 0
  1. import java.awt.*;
  2. import java.awt.event.*;
  3. import javax.swing.*;
  4.  
  5. public class DemoJPanel1 extends JPanel implements MouseListener,ItemListener,ActionListener,MouseMotionListener {
  6.     JPanel mainPanel = new JPanel();
  7.     int startX, startY,endX,endY;
  8.     /*--------Default Constructor to Set Up JPanel--------*/
  9.     DemoJPanel1(){
  10.         mainPanel.setPreferredSize(new Dimension(300,300));
  11.         mainPanel.setBackground(Color.blue);
  12.         mainPanel.addMouseListener(this);
  13.     }
  14.    
  15.     /*--------Shape Painter Function--------*/
  16.     public void shapeDrawer() {
  17.         Graphics2D g2 = (Graphics2D) getGraphics();    
  18.         g2.setColor(Color.white);                      
  19.         int width = Math.abs(endX-startX);             
  20.         int height = Math.abs(endY-startY);            
  21.         minAndMax();
  22.         g2.fillRect(startX, startY, width, height);
  23.     }
  24.    
  25.     public void minAndMax() {
  26.        
  27.         if(startX > endX) {
  28.             int temp = startX;
  29.             startX = endX;
  30.             endX = temp;
  31.         }
  32.         if(startY >endY) {
  33.             int temp = startY;
  34.             startY = endY;
  35.             endY = temp;
  36.         }
  37.     }
  38.    
  39.     /*--------Mouse Motion Functions--------*/
  40.         @Override
  41.     public void mousePressed(MouseEvent e) {
  42.             System.out.println("Test 1");
  43.             this.startX = e.getX();        
  44.             this.startY = e.getY();
  45.     }
  46.     @Override
  47.     public void mouseReleased(MouseEvent e) {
  48.         this.endX = e.getX();
  49.         this.endY = e.getY();
  50.         shapeDrawer();
  51.     }
  52.     /*--------Not Used Mouse Motion Functions--------*/
  53.     @Override
  54.     public void mouseDragged(MouseEvent arg0) {
  55.     }
  56.     @Override
  57.     public void mouseMoved(MouseEvent arg0) {
  58.     }
  59.     @Override
  60.     public void actionPerformed(ActionEvent arg0) {
  61.     }
  62.     @Override
  63.     public void itemStateChanged(ItemEvent arg0) {
  64.     }
  65.     @Override
  66.     public void mouseClicked(MouseEvent e) {
  67.     }
  68.     @Override
  69.     public void mouseEntered(MouseEvent e) {
  70.     }
  71.     @Override
  72.     public void mouseExited(MouseEvent e) {
  73.     }
  74.  
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement