miten saa JButtoniin toiminnallisuden, eli lopettamaan ohjelman suorituksen kyseistä painiketta painamalla?
eli jos on:
button = new JButton("close");
panel.add(button);
button.addActionListener(this);
public void windowClosed(WindowEvent e){
System.exit(0);
}
Tai jotain tuonne päin...
--Konstit on monet, mutta kun ne eivät toimi
Heitetääs koodihatusta jotain:
JButton nappi = new JButton("Loppu"); nappi.addActionListener(new NappiKuuntelija()); add(nappi); class NappiKuuntelija implements ActionListener { public void actionPerformed(ActionEvent e) { // tee taikasi tässä } // actionPerformed } // class NappiKuuntelija
Voi olla virhettä, mutta noin pääperiaatteissaan.
if (e.getSource() == close){
Main.lopetus();
niin mitä siinä pääluokassa pitää olla, kun mainissa
public void windowClosed(WindowEvent e){
System.exit(0);
}
public static void lopetus() {
System.exit(0);
ei toimi? Tai siis mitä "sovellus.setDefaultCloseOperation(JFrame.
tuon tilalla pitäisi olla? Tuo lienee viitannee siihen yläkulman sulkemisruksiin...
Painikkeet tapahtumat kutsuvat actionPerformed-metodia. Luokan on toteutettava ActionListener-rajapinta.
Lisäät luokan määritykseen
public class ... implements ActionListener
gem kirjoitti:
button = new JButton("close"); panel.add(button); button.addActionListener(this); public void windowClosed(WindowEvent e){ System.exit(0); } // lisätty public void actionPerformed(ActionEvent ae) { // tähän voisi lisätä painikkeen tunnistuksen System.exit(0); }
Aihe on jo aika vanha, joten et voi enää vastata siihen.