[JAVA]Metodo per visualizzare JButton?

LightSoul94

Utente Attivo
256
16
Salve a tutti, stavo compilando un semplice algoritmo java che apre un Frame che poi lo chiude cliccando su un JButton.

Il compilatore non mi da errori, eppure si apre il frame ma non c'è il jButton.
Ho tentato anche a renderlo visibile ma non ha funzionato:

Codice:
import javax.swing.JFrame;
import javax.swing.JButton;
public class MySoft 
{
    public static void main(String[] args) {
        JFrame frame = new JFrame("My Software");
        frame.setSize(500, 500);
        JButton button1 = new JButton("OK");
        button1.setSize(50, 50);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setVisible(true);
        button1.setVisible(true);
    }
    
}
 
Ultima modifica:

BAT

Moderatore
Staff Forum
Utente Èlite
22,918
11,562
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
devi
1. creare un pannello
2. creare un bottone
3. aggiungere il bottone al pannello
4. aggiungere il pannello con il bottone alla finestra
5. infine rendere visibile la finestra
quindi qualcosa come

JPanel pann = new JPanel();
JButton bott = new JButton("bottone");
pann.add(bott);
frame.add(pann);

frame.setVisible(true);
 
  • Mi piace
Reazioni: LightSoul94

BAT

Moderatore
Staff Forum
Utente Èlite
22,918
11,562
CPU
1-Neurone
Dissipatore
Ventaglio
RAM
Scarsa
Net
Segnali di fumo
OS
Windows 10000 BUG
per posizionarlo devi studiare i diversi tipi di layout che esistono in Swing;
quello predefinito è il layout "a flusso", dove le componenti vengono inserite una dietro l'altra;
poi ci sono i layout a griglia, il layout a bordi ecc. ecc.; i vari layout si possono combinare ma ci vuole pratica.
c'è anche il layout assoluto che ti permette di definire la posizione precisa in pixel, però non è consigliato.

Una guida la trovi nella sezione apposita del Java tutorial ufficiale
[url]https://docs.oracle.com/javase/tutorial/uiswing/index.html[/URL]
un'idea puoi averla nella sezione sui layout
[url]https://docs.oracle.com/javase/tutorial/uiswing/layout/index.html[/URL]
 

LightSoul94

Utente Attivo
256
16
grazie di tutto cuore BAT00cent, senza il tuo aiuto non c'è l'avrei mai fatta!
import java.awt.BorderLayout;
import java.awt.Container;
import javax.swing.JFrame;
import javax.swing.JButton;
import javax.swing.JPanel;
public class MySoft
{
public static void main(String[] args) {
//**Costruzione del Frame**//
JFrame frame = new JFrame("MySoft");
frame.setSize(400, 400);
frame.setLocation(800, 300);
//*Creazione del pannello**//
JPanel pann = new JPanel();
//**Creazione del bottone**//
Container pane = frame.getContentPane();
JButton button1 = new JButton("OK");
//**Inserimento bottone nel pannello**//
pane.add(button1, BorderLayout.PAGE_END);
//**Inserimento pannello con bottone nel frame**//
frame.add(pann);
//**Impostazione di visibilità degli oggetti**//
frame.setVisible(true);
frame.setVisible(true);
button1.setVisible(true);
//**Modalità di chiusura del frame**//
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}

}

Ovviamente mi studierò anche gli altri metodi per il Layout, ciao!
 

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!