ciao.
io ho un main
codice:
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
Window win = new Window();
}
});
}
che carica il mio frame principale che si trova nella classe Window
codice:
public class Window extends JFrame {
public static final int LARGHEZZA = 800;
public static final int ALTEZZA = 600;
public Window() {
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(400, 300);
setBackground(Color.blue);
setBounds(0, 0, LARGHEZZA, ALTEZZA);
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
addWindowListener(new WindowAdapter() {
@Override
public void windowClosing(WindowEvent e) {
int answer = JOptionPane.showConfirmDialog(e.getWindow(),
"Vuoi veramente chiudere la finestra?",
"Conferma chiusura", JOptionPane.YES_NO_OPTION);
if (answer == JOptionPane.YES_OPTION) {
e.getWindow().dispose();
}
}
});
TastiPrincipali visualizza = new TastiPrincipali(); add(visualizza.VistaProdotti());
setVisible(true);
}
questa mostra solo un frame vuoto con un evento in fase di chiusura, ossia chiede conferma
Poi ho creato un oggetto (TastiPrincipali) dove saranno presenti tutti i bottoni
codice:
public class TastiPrincipali {
//istanzio degli oggetti
Prodotti prodotto = new Prodotti();
JPanel pannello = new JPanel();
JButton bottoneInsertProdotto = new JButton("Inserire Prodotto");
JButton bottoneVistaProdotto = new JButton("Vista Prodotto");
public TastiPrincipali(){}
public Component VistaProdotti(){
LayoutManager layoutInsert = new FlowLayout(FlowLayout.LEFT);
pannello.setLayout(layoutInsert);
pannello.add(bottoneVistaProdotto);
return pannello;
}
}
il metodo restituisce un Component che non è altro che un bottone all'interno di un contenitore JPanel
il mio problema è che alla pressione di questo tasto vorrei creare una tabella dinamica.
solo che questa tabella vorrei che stesse in una classe (tipo Tabella) e passandogli un arrayList mi crei righe e colonne.
Riesco a creare un nuovo JFrame con la tabella Statica, ma solo se la carico all'interno di questo tasto...
non capisco come posso far tornare a Window la mia tabella...
qualche consiglio?
mi conviene creare l'evento all'interno del metodo VistaProdotti?
grazie!