Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class UsoThreads {
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Marco miMarco=new Marco();
- miMarco.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- miMarco.setVisible(true);
- }
- public Marco() {
- setBounds(400,300,600,400);
- setTitle("Rebota Pelota");
- LaminaPelota miLamina=new LaminaPelota();
- add(miLamina,BorderLayout.CENTER);
- LaminaBotones milamina2=new LaminaBotones();
- add(milamina2,BorderLayout.SOUTH);
- }
- private double x=10;
- private double y=10;
- private static final int TAMX=15;
- private static final int TAMY=15;
- private double speedX=1;
- private double speedY=1;
- public void mover(Rectangle2D limite) {
- x+=speedX;
- y+=speedY;
- if(x<limite.getMinX()) {
- x=limite.getMinX();
- speedX=-speedX;
- }
- if(x+TAMX>limite.getMaxX()) {
- x=limite.getMaxX()-TAMX;
- speedX=-speedX;
- }
- if(y<limite.getMinY()) {
- y=limite.getMinY();
- speedY=-speedY;
- }
- if(y+TAMY>limite.getMaxY()) {
- y=limite.getMaxY()-TAMY;
- speedY=-speedY;
- }
- }
- public Ellipse2D dibujarPelota() {
- return new Ellipse2D.Double(x,y,TAMX,TAMY);
- }
- private ArrayList<Pelota>arrayPelota=new ArrayList<Pelota>();
- public void agregarPelota(Pelota b) {
- arrayPelota.add(b);
- }
- public void paintComponent(Graphics g){
- super.paintComponent(g);
- Graphics2D g2=(Graphics2D) g;
- for(Pelota e:arrayPelota) {
- g2.fill(e.dibujarPelota());
- }
- }
- public LaminaBotones() {
- JButton dale=new JButton("Dale");
- JButton salir=new JButton("Salir");
- dale.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- // TODO Auto-generated method stub
- comienza();
- }
- });
- salir.addActionListener(new ActionListener() {
- @Override
- public void actionPerformed(ActionEvent e) {
- // TODO Auto-generated method stub
- System.exit(0);
- }
- });
- add(dale);
- add(salir);
- }
- public void comienza() {
- Pelota pelota=new Pelota();
- lamina.agregarPelota(pelota);
- for(int i=1;i<=3000;i++) {
- pelota.mover(lamina.getBounds());
- lamina.paint(lamina.getGraphics());
- }
- }
- private LaminaPelota lamina;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement