Visualizzazione dei risultati da 1 a 5 su 5

Discussione: Eventi

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    35

    Eventi

    Ciao a tutti ragazzi,sto studiando le interfacce grafiche in java,ma non riesco a capire una cosa,ecco il codice:

    codice:
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    
    public class prova extends JFrame implements ActionListener {
    
    public prova()
    {
    	JFrame f = new JFrame();
    	JButton b = new JButton("Clicca",new ImageIcon("saints-row-2.jpg"));
    	JPanel p = new JPanel();
    	JLabel l = new JLabel("LABEL");
    	p.add(b);
    	p.add(l);
    	f.getContentPane().setLayout(new BorderLayout());
    	f.getContentPane().add(BorderLayout.NORTH,p);
    	b.addActionListener(this);
    	getContentPane().add(b);
    }
    public void actionPerformed(ActionEvent e)
    {
    	JOptionPane.showMessageDialog(this,"Saints Row 2");
    }
    public static void main(String argv[])
    {
    	prova e = new prova();
    	e.setSize(400,400);
    	e.setVisible(true);
    }
    }
    nella class prova() io ho creato un frame,un pannello,una label e un bottone...
    io voglio inserire tutto nel pannello per poi inserire nel frame...ma mi si vede solo il bottone e non la label...non capisco perchè...

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284

    Re: Eventi

    Originariamente inviato da Snipper
    ma mi si vede solo il bottone e non la label...non capisco perchè...
    Innanzitutto una cosa: la tua classe estende JFrame (quindi è un JFrame!!!) ma poi nel costruttore istanzi un altro JFrame .... insomma .. decidi, se usare la tua istanza di prova che è un JFrame o se usare direttamente un JFrame (ma in tal caso l'estensione non ha senso).

    Prima di tutto chiarisci questo, perché così è un po' confuso.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    35
    capito,grazie ora funziona...

    invece se io vorrei fare qualcosa del tipo:
    PREMO IL BOTTONE
    LA LABEL CAMBIA TESTO

    ho provato a farlo ma non va...mi potresti dire come fare così inzio a capire come funzionano gli eventi?

  4. #4
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Originariamente inviato da Snipper
    PREMO IL BOTTONE
    LA LABEL CAMBIA TESTO
    Registri un ActionListener sul JButton e poi nel actionPerformed() fai una cosa del tipo: tuaLabel.setText(blabla);
    Ovviamente vuol dire che la variabile tuaLabel deve essere visibile anche dal actionPerformed e quindi devi metterla come variabile di istanza, non certo tenerla come variabile locale come hai fatto nel tuo codice sopra.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2008
    Messaggi
    35
    risolto,ora ho capito come funzionano gli eventi...e sopratutto come funzionano le classi... thank

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.