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

📄 ballswing.java~59~

📁 自己写的一个小球球的运动
💻 JAVA~59~
字号:
package BallSwing;
import java.lang.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.lang.*;


public class ballSwing extends JFrame implements ActionListener,Runnable
{
  static Thread runner ;
  boolean goon =false;
  JButton btn1 = new JButton("Play");
  JButton btn2 = new JButton("Stop");
  static JLabel label1 = new JLabel("●");
  static JLabel label2 = new JLabel("●");
  static JLabel label3 = new JLabel("●");
  static JLabel label4 = new JLabel("●");
  static JLabel label5 = new JLabel("●");
  static JLabel label6 = new JLabel("●");

  public ballSwing()
  {
    try
     {
       jbInit();
     }
     catch(Exception e)
     {
       e.printStackTrace();
     }
  }
  private  void jbInit() throws Exception
  {

    this.setTitle("Ball");
    this.getContentPane().setLayout(null);

    label1.setSize(100,100) ;
    label2.setSize(100,100) ;
    label3.setSize(100,100) ;
    label4.setSize(100,100) ;
    label5.setSize(100,100) ;
    label6.setSize(100,100) ;

    label1.setFont(new Font("serif", Font.BOLD, 80)) ;
    label2.setFont(new Font("serif", Font.BOLD , 80)) ;
    label3.setFont(new Font("serif", Font.BOLD , 80)) ;
    label4.setFont(new Font("serif", Font.BOLD , 80)) ;
    label5.setFont(new Font("serif", Font.BOLD , 80)) ;
    label6.setFont(new Font("serif", Font.BOLD , 80)) ;
    label1.setForeground(Color.blue) ;
    label2.setForeground(Color.red) ;
    label3.setForeground(Color.black) ;
    label4.setForeground(Color.green) ;
    label5.setForeground(Color.white) ;
    label6.setForeground(Color.cyan) ;
    label1.setLocation(185,100) ;
    label2.setLocation(150,120) ;
    label3.setLocation(150,150) ;
    label4.setLocation(190,180) ;
    label5.setLocation(215,150) ;
    label6.setLocation(215,120) ;





    this.getContentPane().add(btn1);
    this.getContentPane().add(btn2);
    this.getContentPane().add(label2);
    this.getContentPane().add(label3);
    this.getContentPane().add(label4);
    this.getContentPane().add(label5);
    this.getContentPane().add(label6);
    this.getContentPane().add(label1);

    btn1.setSize(70,30);
    btn1.setLocation(100,330);
    btn1.setFont(new java.awt.Font("Dialog", 1, 15));
    btn2.setSize(70,30);
    btn2.setLocation(200,330);
    btn2.setFont(new java.awt.Font("Dialog", 1, 15));




    btn1.addActionListener(this);
    btn2.addActionListener(this);


    this.setVisible(true);
  }
  public static void main(String[] args)
  {
      int r= 100;
      int a= 0;
      ballSwing exE =new ballSwing();
      exE.setSize(400,400);
      exE.setLocation(200,100);
      exE.setResizable(false);
      exE.show();
      runner = new Thread(exE);


  }

  public void actionPerformed(ActionEvent e)
  {

    if(e.getActionCommand().equals("Play"))
       {
         if(!goon)
         {
           runner.start();
         }
         else
         {
           runner.resume();
         }




       }
     if(e.getActionCommand().equals("Stop"))
       {

         runner.suspend();
         goon = true;
       }




  }
  public void play()
  {
    int r= 50;
    double a = 0;
    double b = Math.PI/3;

    while(true)
   {

    if(r<800)
    {
      r+= 10;
    }
    else
      r = 50 ;
    a+= Math.PI/10;
    label1.setForeground(Color.getHSBColor(80+random(),80+random(),80+random()) ) ;
    label2.setForeground(Color.getHSBColor(180+random(),180+random(),180+random()) ) ;
    label3.setForeground(Color.getHSBColor(280+random(),280+random(),280+random()) ) ;
    label4.setForeground(Color.getHSBColor(380+random(),380+random(),380+random()) ) ;
    label5.setForeground(Color.getHSBColor(480+random(),480+random(),480+random()) ) ;
    label6.setForeground(Color.getHSBColor(580+random(),580+random(),580+random()) ) ;
    label1.setLocation(185 - (int)(r*Math.sin(a)) ,100 - (int)(r*Math.cos(a))) ;
    label2.setLocation(150- (int)(r*Math.sin(a+b)),120- (int)(r*Math.cos(a+b))) ;
    label3.setLocation(150- (int)(r*Math.sin(a+2*b)),150- (int)(r*Math.cos(a+2*b))) ;
    label4.setLocation(190- (int)(r*Math.sin(a+3*b )),180- (int)(r*Math.cos(a+3*b))) ;
    label5.setLocation(215- (int)(r*Math.sin(a+4*b)),150- (int)(r*Math.cos(a+4*b))) ;
    label6.setLocation(215- (int)(r*Math.sin(a+5*b)),120- (int)(r*Math.cos(a+5*b))) ;
   }






  }
  public void run()
  {
     play();
  }


  public static int random()
  {
     return (int) (100.0 * Math.random());
  }







}

⌨️ 快捷键说明

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