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

📄 filloval.java

📁 一个模拟小球弹跳的程序
💻 JAVA
字号:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class fillOval extends JFrame implements ActionListener {
 public static void main(String[] args) {   
      fillOval frame = new fillOval();
 }
 Timer timer;
 int status;
 int px,py,r,pspeed,rpx,rpy,rr,dx,dy,dr,sx1,sy1,sx2,sy2,size1,size2;
 Graphics2D g2;
 
 public fillOval() {
   super("fillOval");
   setBackground(Color.black);
   setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   
   setLocationRelativeTo(null);
   setSize(500,400);
   setVisible(true);
   sx1=10;
   sy1=10;
   sx2=490;
   sy2=390;
   r=10;
   
   size1=5;
   size2=(int)(Math.random()*15)+20;
   px=20;
   py=20;
   pspeed=5;
   dx=1;
   dy=1;
   dr=1;
   timer=new Timer(100,this);
   status=0;
   timer.start();
 }
    @Override
 public void paint(Graphics g){}
 public void actionPerformed(ActionEvent e){
   if(e.getSource() == timer){ 
       Graphics g=getGraphics();
       g2=(Graphics2D) g;
//       g2=setStroke(new BasicStroke(3.0f));
       Color co=new Color(0,0,255);
//       g2.setColor(co);
		g2.setColor(Color.white);
       g2.setXORMode(Color.black);
       if(status==1){
          
           g2.fillOval(rpx,rpy,rr,rr);
       } else {
         status=1;
       }
       g2.fillOval(px,py,r,r);
       rpx=px;rpy=py;rr=r;
       px=px+dx*pspeed;
       py=py+dy*pspeed;
       if(px<sx1) dx=-dx;
       if(py<sy1) dy=-dy;
       if(px>sx2) dx=-dx;
       if(py>sy2) dy=-dy;
       
  //     r=r+dr;
       if(r>size2){
          r=size2;
          dr=-dr;
       }
       if(r<size1){
          r=size1;
          dr=-dr;
       }
     }
   }

 //   private Graphics2D setStroke(BasicStroke basicStroke) {
 //       throw new UnsupportedOperationException("Not yet implemented");
 //   }
  }

⌨️ 快捷键说明

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