Button auto create

1 resposta
S

Preciso criar um código que gere um Button ao click do mouse em local a ser escolhido pelo usuario em determinado espaço do form.

Isto em java…Se alguem tiver alguma idéia ou já fez algo parecido…

1 Resposta

M

primeiramente bem-vindo ao forum e a comunidade Seghetto, bem, respondendo tua duvida, tu pode instanciar esse Button ao evento do clique do mouse, o usuário vai clicar em um local do frame pra escolher o x,y de onde vai ficar o botão ou vai digitar os valores de x,y? os dois são perfeitamente possíveis, bem, ai tem um exemplo q usa eventos do mouse:

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class MouseDetails extends JFrame {

   private int x, y;

   public MouseDetails()
   {
      super( "Mouse clicks and buttons" );

      addMouseListener( new Handler() );

      setSize( 350, 150 );
      setVisible( true );
   }

   public void paint( Graphics g )
   {
      super.paint( g );

      g.drawString( "Clicked @ [" + x + ", " + y + "]", x, y );
   }

   public static void main( String args[] )
   {
      MouseDetails win = new MouseDetails();

      win.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
   }

   private class Handler extends MouseAdapter {

      public void mouseClicked( MouseEvent e )
      {
         x = e.getX();
         y = e.getY();

         String title = "Clicked " + e.getClickCount() + " time(s)";

         if ( e.isMetaDown() )
            title += " with right mouse button";

         else if ( e.isAltDown() )
            title += " with center mouse button";

         else title+= " with left mouse button ";

         setTitle( title );
         repaint();
      }

   }

}

..pegando a posição do mouse, tu pode instanciar um botão, anexar ele ao painel com setBounds( x, y, largura, altura ), e re-pintar o frame..

Criado 23 de maio de 2004
Ultima resposta 23 de mai. de 2004
Respostas 1
Participantes 2