All pastes #478709 Raw Edit

Something

public text v1 · immutable
·published 2007-05-09 10:18 UTC
rendered paste body
import java.awt.*;
import javax.swing.*;

public class Zoga{
	public static void main(String[] args){

	Toolkit tk = Toolkit.getDefaultToolkit();
	Dimension d = tk.getScreenSize();
	
	JFrame okno = new JFrame();
	okno.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
        Vsebina vsebinaOkna = new Vsebina();
        vsebinaOkna.setBackground(new Color(255, 255, 255));
        vsebinaOkna.setPreferredSize(new Dimension(d.width, d.height));
        
    	for (int i=0;i<32;i++){
    		vsebinaOkna.radij[i]=30;
    	//	iks[i]=0;
    	//	ips[i]=0;
    	}
        
		okno.getContentPane().add(vsebinaOkna, BorderLayout.CENTER);
		okno.pack();
		okno.setVisible(true);
		
		Animacija lolz = new Animacija(10,10,1);
		lolz.run(vsebinaOkna);
		Animacija rofl = new Animacija(1,1,2);
		rofl.run(vsebinaOkna);
	}
}

class Vsebina extends JPanel{
	/**
	 * 
	 */
	private static final long serialVersionUID = -7226071297631662428L;

	
	public int[] radij=new int[32];
	public int[] iks=new int[32];
	public int[] ips=new int[32];

	
	public int p;
	
	public void paintComponent(Graphics g){
		super.paintComponent(g);
		g.setColor(Color.red);
		for(int j=0;j<=3;j++)
			g.fillOval(iks[j]-radij[j],ips[j]-radij[j],2*radij[j],2*radij[j]);
	}
	
}

class Animacija extends Thread {
	int xhitrost;
	int yhitrost;
	int parameter;
	
	Animacija(int xhitrost, int yhitrost, int parameter){
		this.xhitrost=xhitrost;
		this.yhitrost=yhitrost;
		this.parameter=parameter;
	}
	
	
	public void run(Vsebina panel) {
		Thread.currentThread().setPriority(Thread.MIN_PRIORITY); 
		boolean naprej=true;
		boolean dol=true;
		panel.p=parameter;
		System.out.println(parameter);
		
		while(true) {
			if (panel.iks[parameter]-panel.radij[parameter]<=0)
				naprej=true;
			if (panel.iks[parameter]+panel.radij[parameter]>=panel.getWidth())
				naprej=false;
				
			if (naprej)
				panel.iks[parameter]+=xhitrost;
			else
				panel.iks[parameter]-=xhitrost;
			
			if (panel.ips[parameter]-panel.radij[parameter]<=0)
				dol=true;
			if (panel.ips[parameter]+panel.radij[parameter]>=panel.getHeight())
				dol=false;
				
			if(dol)
				panel.ips[parameter]+=yhitrost;
			else
				panel.ips[parameter]-=yhitrost;
			
			panel.repaint();
			try {
				Thread.sleep(20);
			}
			catch (InterruptedException ex) {
			}
			Thread.currentThread().setPriority(Thread.MAX_PRIORITY); 
		}
	}	
}