JAVA   59
Boll
Guest on 11th May 2022 04:33:52 PM


  1. import java.awt.*;
  2. import java.text.*;
  3. public class Boll extends Container implements Runnable {
  4.         private Thread aktivitet;
  5.         int r, x0, y0;
  6.         int xSteg, ySteg;
  7.         String col;
  8.  
  9. /**********************************************
  10. *Konstruktor.
  11. ***********************************************/
  12.         public Boll(int radie, int x, int y, int xHast, int yHast, String col) {
  13.                 r = radie; xSteg = xHast; ySteg = yHast;
  14.                 x0 = x; y0 = y;
  15.                 this.col = col;
  16.         }//konstructor
  17.  
  18. /**********************************************************
  19. * Metoder som startar och stoppar bollar.
  20. ************************************************************/
  21.         public void start() {
  22.                 if (aktivitet == null) {
  23.                         aktivitet = new Thread(this);
  24.                         aktivitet.start();
  25.                 }//if
  26.         }//start
  27.  
  28.         public void stop() {
  29.                 if (aktivitet != null) {
  30.                         aktivitet.interrupt();
  31.                         aktivitet = null;
  32.                 }//if
  33.         }//stop
  34.  
  35.         public void run() {
  36.                 while (aktivitet != null) {
  37.  
  38.                         try { Thread.sleep(50);
  39.                         }//try
  40.  
  41.                         catch (InterruptedException ie) {
  42.                                 System.out.println("TRÅDTRASSEL: "");
  43.                                 System.err.println(ie.getMessage());
  44.                         //catch
  45.  
  46.  
  47.                         if (x0-r+xSteg < 0 || x0+r+xSteg > getSize().width)
  48.                         xSteg = -xSteg;
  49.                         x0 += xSteg;
  50.  
  51.                         if (y0-r+ySteg < 0 || y0+r+ySteg > getSize().height)
  52.                         ySteg = -ySteg;
  53.                         y0 += ySteg;
  54.                         repaint();
  55.                 //while
  56.  
  57.         //run
  58.  
  59.  
  60.         public int getXSteg () {
  61.                 return xSteg;
  62.         //getXSteg
  63.  
  64.  
  65.         public int getYSteg () {
  66.                 return ySteg;
  67.         //getYSteg
  68.  
  69.  
  70.         public int getX0 () {
  71.                 return x0;
  72.         //getX0
  73.  
  74.  
  75.         public int getY0 () {
  76.                 return y0;
  77.         //getY0
  78.  
  79.  
  80.         public void paint (Graphics g) {
  81.                 if (col == "bb") {
  82.                         g.setColor(Color.blue);
  83.                 //if
  84.  
  85.  
  86.                 else {
  87.                         g.setColor(Color.red);
  88.                 //else
  89.  
  90.  
  91.                 g.fillOval(x0-r, y0-r, 2*r, 2*r);
  92.         //paint
  93.  
  94. //Boll

Raw Paste

Login or Register to edit or fork this paste. It's free.