Buongiorno a tutti,
sto facendo un progetto per un esame di Java e sto incappando in un piccolo dubbio riguardante la GUI del programma.
Primo dubbio sono i layout. Se volessi creare una finestra in cui ho un testo in alto a sx, un bottone in alto a dx e altri due testi affiancati in basso, quale layout mi conviene utilizzare? non voglio che la finestra venga vista come divisa in 4 blocchi, ma posizionare io i miei oggetti.
Seconda domanda: supponiamo che io utilizzi un GridLayout. Come faccio a fare in modo che i bottoni che ho inserito si autoadattino? (parlo di dimensioni) Ho provato con pack() ma non funziona bene, anche perchè mi compatta tutta la finestra e non solo i bottoni.
Se vi può servire, ecco le due classi interessate. La prima crea il Frame, mentre la seconda inserisce tutti i componenti e balle varie. E' fatto così perchè sfrutto il polimorfismo con altre classi che non sto a mettervi.
sto facendo un progetto per un esame di Java e sto incappando in un piccolo dubbio riguardante la GUI del programma.
Primo dubbio sono i layout. Se volessi creare una finestra in cui ho un testo in alto a sx, un bottone in alto a dx e altri due testi affiancati in basso, quale layout mi conviene utilizzare? non voglio che la finestra venga vista come divisa in 4 blocchi, ma posizionare io i miei oggetti.
Seconda domanda: supponiamo che io utilizzi un GridLayout. Come faccio a fare in modo che i bottoni che ho inserito si autoadattino? (parlo di dimensioni) Ho provato con pack() ma non funziona bene, anche perchè mi compatta tutta la finestra e non solo i bottoni.
Se vi può servire, ecco le due classi interessate. La prima crea il Frame, mentre la seconda inserisce tutti i componenti e balle varie. E' fatto così perchè sfrutto il polimorfismo con altre classi che non sto a mettervi.
Codice:
public class grafica extends JFrame {
private static int width = 500;
private static int height = 500;
public grafica(){
this("");
}
public grafica(String Titolo){
super(Titolo);
setBounds(100, 100, width, height);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
}
public class MainWindow extends grafica implements ActionListener{
private JButton Selezione, Modifiche, Ricerca;
public MainWindow(){
this("");
}
public MainWindow(String Titolo){
super(Titolo);
add(Selezione = new JButton("Scelta File"));
add(Modifiche = new JButton("Modifiche effettuate"));
add(Ricerca = new JButton("Ricerca info su risultati"));
Selezione.addActionListener(this);
Modifiche.addActionListener(this);
Ricerca.addActionListener(this);
setLayout(new GridLayout(0,1) );
setVisible(true);
}
public void actionPerformed(ActionEvent e){
Object Premuto = e.getSource();
if(Premuto == Selezione){
EditWindow Schermata = new EditWindow("Edit Selections");
}
if(Premuto == Modifiche);
if(Premuto == Ricerca);
}
}