Visualizzazione dei risultati da 1 a 5 su 5

Visualizzazione discussione

  1. #1

    Disegnare un rettangolo con base e altezza dati in input

    Salve, la traccia dell'esercizio è questa: Scrivere un’applicazione che chieda all’utente di inserire
    la base e l'altezza di un rettangolo in due campi di testo e al click del
    mouse disegni un rettangolo con quelle dimensioni e con il vertice
    nella posizione del puntatore del mouse.
    Pensavo di riuscire a farlo senza problemi ma ogni volta' mi da errori al ClickListener.

    Ditemi se ho sbagliato qualcosa nel codice:
    codice:
    import java.awt.Graphics;
    import java.awt.Graphics2D;
    import java.awt.Rectangle;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    
    public class test 
    {
    
        
      public static void main(String[] args) 
          {
               int FINAL_TEXT=10;
               ActionListener listener= new ClickListener();
               JLabel label= new JLabel("Inserisci la lunghezza della base del rettangolo: ");
               JTextField textbase= new JTextField(FINAL_TEXT);
               JLabel label2= new JLabel("Inserisci la lunghezza dell'altezza del rettangolo");
               JTextField textaltezza= new JTextField(FINAL_TEXT);
               JFrame frame= new JFrame();
               JButton button= new JButton("Invio");
               button.addActionListener(listener);
               frame.setSize(300,400);
               JPanel panel= new JPanel();
               panel.add(label);
               panel.add(textbase);
               panel.add(label2);
               panel.add(textaltezza);
               panel.add(button);
               frame.add(panel);
               frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
               frame.setVisible(true);
                 class ClickListener implements ActionListener
                 {
                        public void actionPerformed(ActionEvent event) 
                          {
                                  JFrame frame2= new JFrame();
                                   frame2.setSize(600, 800);
                                   frame2.addMouseListener(new MouseListener() 
                                   {
                                            private Graphics2D g2;
                                            public void mousePressed(MouseEvent event)
                                                  {
                                                          int base;
                                  int altezza;
                                                          base=Integer.parseInt(textbase.getText());
                                  altezza=Integer.parseInt(textaltezza.getText());
                                  int x = event.getX();
                                                          int y = event.getY();
                                                          Rectangle box= new Rectangle(x, y, base, altezza);
                                                          Graphics g = null;
                                                          g2 = (Graphics2D) g;
                                                           g2.draw(box);
                            
                                                      }
                        //Metodi nulli
                               public void mouseReleased(MouseEvent event) {}
                               public void mouseClicked(MouseEvent event) {}
                               public void mouseEntered(MouseEvent event) {}
                               public void mouseExited(MouseEvent event) {}
                         } 
    );
                        frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
                        frame2.setVisible(true);
                    
                    
                }
                
            }
            
            
     }
    }
    Vi ringrazio anticipatamente. Ps: sono nuovo ma non ho trovato da nessuna parte una discussione per le presentazioni e nessuna discussione in cui l'esercizio fosse molto simile al mio, se una delle due esiste mi scuso anticipatamente.
    Ultima modifica di Antonio181926; 22-01-2018 a 18:45

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.