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

📄 function.java

📁 该系统为画图软件,可以根据喜好画圆,椭圆.直线.长方形
💻 JAVA
字号:
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;

class function extends JPanel
{
	public int shu [][]=new int [800][600];
	public int xx []=new int [10000]; 
	public int yy []=new int [10000];
	public int xx1 []=new int [10000];
	public int yy1 []=new int [10000];
	public int zhi;                     
	public int zhex1 []=new int [1000]; 
	public int zhey1 []=new int [1000];
	public int zhex2 []=new int [1000];
	public int zhey2 []=new int [1000];
	int oo;
	int o1=0;	
	public static int check1=0;
    int mousex;
    int mousey;
    int mousex1;
    int mousey1;
    int iis1;
    public int yuanx []=new int [10000];
	public int yuany []=new int [10000];
	public int yuanx1 []=new int [10000];
	public int yuany1 []=new int [10000];
    public int yuan;                     
    public int zyuanx []=new int [10000]; 
	public int zyuany []=new int [10000];
	public int zyuanx1 []=new int [10000];
	public int zyuany1 []=new int [10000];
	protected Image offscreen;
	protected Graphics offg;
	public void function()
	{
		start();
	}
    public void addNotify()
	{
		super.addNotify();           
		offscreen=createImage(780,600); 
		offg=offscreen.getGraphics();
		addMouseListener(new ML());	
		addMouseListener(new MLL());	
		addMouseMotionListener(new MML());	
		addMouseListener(new MMLL());	
	}
	public void paint(Graphics g)
	{
		int a;
	    draw frm=new draw();
	    a=frm.zhe[1];
        offg.setColor(new Color(255,255,255));
		offg.fillRect(0,0,780,600);
		offg.setColor(Color.black);
	    for(int i=0;i<yuan+1;i++) 
	    {
	    	int aa,b;
	  	    if(zyuanx[i]>zyuanx1[i])
	           aa=zyuanx[i]-zyuanx1[i];
	  	    else
	  	       aa=zyuanx1[i]-zyuanx[i];
	        if(zyuany[i]>zyuany1[i])
	  	       b=zyuany[i]-zyuany1[i];
	  	    else
	  	       b=zyuany1[i]-zyuany[i];
	        offg.drawOval(zyuanx[i]-aa,zyuany[i]-aa,aa*2,aa*2);
	   }
	   for(int i=0;i<yuan+1;i++)  
	   {
	   	    int aa,b;
	  	    if(yuanx[i]>yuanx1[i])
	  	       aa=yuanx[i]-yuanx1[i];
	  	    else
	  	       aa=yuanx1[i]-yuanx[i];
	        if(yuany[i]>yuany1[i])
	  	       b=yuany[i]-yuany1[i];
	  	    else
	  	       b=yuany1[i]-yuany[i];
            offg.drawOval(yuanx[i],yuany[i],aa,b);
	   }
	   for(int i=1;i<iis1+1;i++)
	   	   if(zhex1[i]!=0)
	       {
	       	   offg.drawLine(zhex1[i],zhey1[i],zhex2[i],zhey2[i]);
	       }
		   if(xx[1]!=0)   
		   {
		   	   for(int i=1;i<o1;i++)
	           {
	           	   offg.drawLine(xx1[i],yy1[i],xx[i],yy[i]);
	           }
	       }
	       g.drawImage(offscreen,0,0,this);
	       }
	public void update(Graphics g)
	{
		paint(g);
	}
	public void start()
	{
		repaint();
	}
	public void checke()
	{
		for(int i=1;i<800;i++)
		{
			for(int j=1;j<600;j++)
			{
		      if(shu[i][j]==1)
		         offg.fillRect(i,j,2,2); 
			}
		}
    }
class ML extends MouseAdapter
{
	function qi=new function();
	public void mousePressed(MouseEvent evt)
	{
		mousex1=evt.getX();
	   	mousey1=evt.getY();	
	   	int a,b;
		draw frm=new draw();
		a=frm.zhe[1];   
		b=frm.zhe[2];                 
		if(b==1)                    
		{
			for(int i=1;i<1000;i++)  
		    {                        
		        zhex1[i]=0;             
		    	zhey1[i]=0;         
		    	zhex2[i]=0;                
		    	zhey2[i]=0;         
	        }                   
		    frm.zhe[2]=0;               
		    iis1=0;                    
		    repaint();               
		}                             
        if(b==2)                       
	    {
	    	for(int i=1;i<1000;i++)               
		  	{                                     
		  		yuanx[i]=0;                      
		  		yuany[i]=0;                        
		  		yuanx1[i]=0;            
		  		yuany1[i]=0;                       	                          
		  		zyuanx[i]=0;                         
		  		zyuany[i]=0;                       
		  		zyuanx1[i]=0;                 
		  		zyuany1[i]=0;                
		  		yuan=1;                 
		  		frm.zhe[2]=0;               	
		  	}                           
	    }	                             
	    if(b==3)                             
		{
			for(int i=1;i<1000;i++)                      
		  	{                                
		  		xx[i]=0;               
		  		yy[i]=0;                     
		  		xx1[i]=0;                       
		  		yy[i]=0;                    
		  	     o1=0;                        
		  		frm.zhe[2]=0;           	
		  	}                           
	  	                                               
		}	                          
	    if (a==1)                           
	    {
	    	iis1=iis1+1;                    
			zhex1[iis1]=evt.getX();         
			zhey1[iis1]=evt.getY();        		                     
			zhex2[iis1]=evt.getX();         
			zhey2[iis1]=evt.getY();	           
		}                                                                      
		if (a==2)                        
		{
			yuan=yuan+1;                      
		    yuanx[yuan]=evt.getX();                 
			yuany[yuan]=evt.getY();                                
			yuanx1[yuan]=evt.getX();                    
			yuany1[yuan]=evt.getY();                        
		}                                 
        if (a==3)                        
        {
        	yuan=yuan+1;                                               
			zyuanx[yuan]=evt.getX();           
			zyuany[yuan]=evt.getY();                                      
			zyuanx1[yuan]=evt.getX();              
			zyuany1[yuan]=evt.getY();                                                          
		}                               
        repaint();
	}
}  
class MLL extends MouseAdapter
{
	function qi=new function();
	public void mouseReleased (MouseEvent evt)
	{
		check1=1;
		oo=o1;
	    int a;
		draw frm=new draw();
		a=frm.zhe[1];
		if (a==1)
		{
			zhex2[iis1]=evt.getX();
			zhey2[iis1]=evt.getY();
		
	    }
		zhi=0;
	   	repaint();
    }
} 
private class MML extends MouseMotionAdapter
{
	public void mouseDragged(MouseEvent evt)
	{
		int a;
	    draw frm=new draw();
		a=frm.zhe[1];
		if (a==1)
		{
			zhex2[iis1]=evt.getX();
			zhey2[iis1]=evt.getY();
	    }
	    if (a==2)               
		{
			yuanx1[yuan]=evt.getX();
			yuany1[yuan]=evt.getY();
	    }
	    if (a==3)             
		{
			zyuanx1[yuan]=evt.getX();
			zyuany1[yuan]=evt.getY();
	    }
        oo=1;
	    int i=1;
	    if(a==0) 
	   	{
	   		mousex=evt.getX();
	   	    mousey=evt.getY();
	   	    shu[mousex][mousey]=1;
	   	    o1=o1+1;
	   	    xx[o1]=mousex;
	   	    yy[o1]=mousey;
	   	    if(zhi==0) 
	   	    {
	   	    	xx1[o1]=mousex;      
	   	 	    yy1[o1]=mousey;       
	   	 	    zhi=1;                                   
	   	    }                       
	   	    else                    
	   	   {
	   	   	    xx1[o1]=xx[o1-1];    
	   	 	    yy1[o1]=yy[o1-1];     
	   	   }                         
	   }
	   repaint();	
    }
} 
class MMLL extends MouseAdapter
{
	public void mouseClicked(MouseEvent evt)
	{
		int a;
    }
}
}

⌨️ 快捷键说明

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