Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [Java] - JButton, nn visualizza il bottone

    Ave, ho creato un codice che generi una finestra con sfondo ma nn mi visualizza il bottone. Dove sbaglio?

    codice:
    package din;
    
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.awt.image.BufferedImage;
    import java.io.File;
    import java.io.IOException;
    import javax.imageio.ImageIO;
    import javax.swing.ImageIcon;
    import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    
    
    public class Main extends JFrame {
    
        String percorso = "./temp/1.jpg";
        File sfondo = new File(percorso);    
        
        public Main() throws IOException {
    
            BufferedImage image = ImageIO.read(sfondo);
            JLabel label = new JLabel(new ImageIcon(image));
            JFrame window = new JFrame("DIN");
            window.setSize(400,400);
            window.add(label);
               
            JButton bottone = new JButton("OK");        
            label.add(bottone);
    
            window.setVisible(true);
            window.addWindowListener(new WindowAdapter() {
    
    
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
        }
    
        public static void main(String[] args) throws IOException {
            Main principale = new Main();
        }
    }

  2. #2
    help me, please

  3. #3
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Beh, i componenti andrebbero aggiungi a dei contenitori... Tu stai aggiungendo il tuo pulsante ad una etichetta, dovresti metterlo su un pannello invece!
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  4. #4
    cioè dovei creare un JPanel

    es:

    codice:
    JPanel panel = new JPanel();
    panel.add(bottone);
    giusto?

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da likioti687
    cioè dovei creare un JPanel

    es:

    codice:
    JPanel panel = new JPanel();
    panel.add(bottone);
    giusto?
    Sì. Ovviamente poi devi aggiungere questo pannello alla finestra...
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    non sarebbe meglio aggiungerli direttamente alla frame inserendoli in un suo contenitore?
    per ottenere il contenitore dalla frame puoi fare così:
    codice:
    Container contPane=frame.getContentPane();
    una volta ottenuto il contenitore gestisci il posizionamento delle componenti tramite i gestori di Layout es:BorderLayout e molti altri...basta consultare la documentazione java on-line

  7. #7
    ok grazie

  8. #8
    ok, sono riuscito ...adesso dovrei mettere il testo sopra lo sfondo, solo che usando JTextField mi esce il riquadro bianco. Come faccio a non far visualizzare questo riquadro?

    cmq questo è il codice:

    codice:
    finestra = new JFrame ("DIN");
    file = new File(sfondo);
    pannello = new SfondoFrame(file);
    file1 = new File(sfondo);
    pannello = new SfondoFrame(file1);
    finestra.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    finestra.setSize(ris_x,ris_y);
    finestra.add(pannello);
    finestra.setResizable(false);
    
    schermo = Toolkit.getDefaultToolkit().getScreenSize();
    schermo2 = finestra.getSize();
    finestra. setLocation((schermo.width - schermo2.width) / 2,(schermo.height -schermo2.height) / 2);
    
    pannello.setLayout(new FlowLayout(10, 0, 547));
    
    bottone = new JButton("GO!");
    pannello.add(bottone);
                    
    finestra.setVisible(true);

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.