⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphicspanel.java

📁 包含多个java程序
💻 JAVA
字号:
//:GraphicsPanel.java

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
 
class GraphicsPanel extends JPanel 
               implements MouseListener,MouseMotionListener {
                	
    private int mflag=0;
    private int x0,y0,x1,y1;
	
	private static String objName;
	private  static Color  objColor;
 	private ArrayList gList=new ArrayList();
	
    public GraphicsPanel(){
    	
   	    Color drawbgColor=Color.white;
		setBackground(drawbgColor);
		setCursor(new Cursor(Cursor.CROSSHAIR_CURSOR));
		addMouseListener(this);
		addMouseMotionListener(this);
		
    }
    
    public static void letName(String str){
      objName=str;
   	 }
   	 
    public static void letColor(Color col){
      objColor=col;
   	 }
   	 
    public void mouseDragged(MouseEvent e){
       if(mflag==1)
         {
         	     
                 x1=e.getX();
                 y1=e.getY();
                 repaint();
         }
          
    }
    public void mouseMoved(MouseEvent e){ }
    public void mouseClicked(MouseEvent e) {}
   	
    public void mouseEntered(MouseEvent e) {}
    public void mouseExited(MouseEvent e) {}
    
    public void mousePressed(MouseEvent e) {
    	   
    	   	    if(mflag==0)
    	   	      { 
    	   	      	mflag=1;
    	   	      	x0=e.getX();
                    y0=e.getY();

                  }
            
    	
    }
    
    public void mouseReleased(MouseEvent e) {
    	
    	     if(mflag==1)
    	        {          
    	             
                     x1=e.getX();
                     y1=e.getY();
                     mflag=0;
                     repaint();
    	         }
    	
    	}
    
    public void paint(Graphics g){
        
         super.paint(g);
         g.setColor(objColor);
         
         
         if(objName=="直线") { 
              g.drawLine(x0,y0,x1,y1);
              
          } 
     
         if(objName=="矩形") {
              g.drawRect(x1>=x0?x0:x1, y1>=y0?y0:y1, Math.abs(x1-x0)+1, Math.abs(y1-y0)+1);
         }
     
     
        if(objName=="椭圆"){
              g.drawOval(x1>=x0?x0:x1, y1>=y0?y0:y1, Math.abs(x1-x0)+1, Math.abs(y1-y0)+1);
     	}
     
        if(objName=="填充式矩形"){
              g.fillRect(x1>=x0?x0:x1, y1>=y0?y0:y1, Math.abs(x1-x0)+1, Math.abs(y1-y0)+1);
     	}
       
       if(objName=="填充式椭圆"){
              g.fillOval(x1>=x0?x0:x1, y1>=y0?y0:y1, Math.abs(x1-x0)+1, Math.abs(y1-y0)+1);
     	}
     
     
     }
  
     
  }
  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -