Visualizzazione dei risultati da 1 a 5 su 5

Hybrid View

  1. #1
    Utente di HTML.it
    Registrato dal
    Aug 2016
    Messaggi
    110
    Ho cambiato da BorderLayout.Center a BorderLayout.North e ora funziona! non so come mai ma "Center" si prende tutta la finestra!

    Per quanto riguarda questo:

    Altra cosa: c'è un modo migliore (sicuramente si) per gestire l'actionEvent della premuta di un singolo tasto? Perché per il momento ho adattato un classico caso di scelta tra due bottoni...
    Hai qualche dritta? Grazie

  2. #2
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da Sevenis Visualizza il messaggio
    non so come mai ma "Center" si prende tutta la finestra!
    Ma ... è proprio così la logica di BorderLayout! La parte CENTER si prende tutto lo spazio del contenitore che ha BorderLayout, a meno dello spazio eventualmente occupato da un componente in NORTH e/o SOUTH e/o EAST e/o WEST.

    Quote Originariamente inviata da Sevenis Visualizza il messaggio
    Per quanto riguarda questo:
    Altra cosa: c'è un modo migliore (sicuramente si) per gestire l'actionEvent della premuta di un singolo tasto? Perché per il momento ho adattato un classico caso di scelta tra due bottoni...

    Hai qualche dritta? Grazie
    Non ho ben capito cosa intendi ... alla possibilità di gestire più pulsanti? Alla possibilità di implementare più ActionListener?
    La questione è ampia, nel senso che puoi dare una implementazione specifica di ActionListener a ciascun pulsante, oppure ne puoi avere una unica (come nel tuo caso, dato che il ActionListener l'hai implementato a livello di classe principale del frame) e poi distinguere il pulsante che ha originato l'evento.

    Per distinguere il pulsante si può anche usare (specialmente per certi scenari particolari) il "action command". Ma in genere, ed è quello che faccio sovente anche io, è più semplice verificare per == di riferimento il "source" dell'evento:

    codice:
    private JButton button1;
    private JButton button2;
    
    .....
        public void actionPerformed(ActionEvent e) {
            Object source = e.getSource();
    
            if (source == button1) {
                // .....
            } else if (source == button2) {
                // .....
            }
        }
    Se è stato button1 a generare l'evento, il "source" dell'evento è esattamente quello stesso oggetto JButton.
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

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 © 2026 vBulletin Solutions, Inc. All rights reserved.