Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    inesperto...

    ciao ragazzi, mi avvicino adesso al linguaggio Java ,
    normalmente programmo in vb2005 e mi diverto tanto , vorrei farlo anche in java .
    anche se leggo tutorial a riguardo ,ma delle cose non vanno proprio, tipo:

    quando appare il form (JFrame) il bottone e grande quanto il form stesso , perche??

    import javax.swing.JButton;
    import javax.swing.JFrame;

    public class form {

    public static void set() {


    JFrame p = new JFrame();
    JButton bott = new JButton("salvax");


    bott.setSize(20,20);
    bott.setLocation(40, 40);


    p.add(bott);



    p.setSize(250,250);

    p.setTitle("primo progetto java");
    p.setVisible(true);

    p.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);



    p.add(p);
    }
    public static void main(String[] args){


    set();




    }



    }

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2011
    Messaggi
    28
    credo che di default il JFrame istanza il BorderLayout manager (un tipo di layout manager) e ogni volta che aggiungi qualcosa (tipo un JButton) in uno dei 5 quadranti (north, west, center, east, south) il BorderLayout gli farà prendere tutto lo spazio disponibile, nel tuo caso 250x250.
    prova ad aggiungere il JButton ad un JPanel e poi aggiungere questo JPanel al JFrame

  3. #3
    Devi impostare un layout al content pane e poi per dare la dimensione al JButton non usare setSize, ma setPreferredSize().

    lolide
    Java Programmer

    Informati

  4. #4
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    È un problema di layou manager: di default JFrame usa BorderLayout (che divide lo spazio in cinque aree: NORTH, EAST, SOUTH, WEST e CENTER). Usando BorderLayout, il metodo add() ha bisogno di sapere dove posizionare il componente che stai aggiungendo: se non metti nulla, di default assume "CENTER".
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  5. #5
    ci provo subito grazie ,
    tu credi che Jframe dia solo la 5 possibilita di orientamento ,ma la grandezza dei bottoni ?
    sara' anche decisa dalla classe stessa in base al popolamento del form boo .
    ciao grazie

  6. #6
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da lolide
    Devi impostare un layout al content pane e poi per dare la dimensione al JButton non usare setSize, ma setPreferredSize().

    Da Java 5 chiamando add() o setLayout() sul JFrame fa sì che venga chiamato il metodo del content pane. Quindi fare

    p.getContentPane().add(bott)

    o

    p.add(bott)

    è esattamente la stessa cosa.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  7. #7
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da metalsalvax
    tu credi che Jframe dia solo la 5 possibilita di orientamento ,ma la grandezza dei bottoni ?
    sara' anche decisa dalla classe stessa in base al popolamento del form boo .
    Basta leggere la documentazione di BorderLayout eh...
    http://download.oracle.com/javase/6/...derLayout.html

    Se posizioni il pulsante in CENTER questo avrà la massima dimensione possibile, ignorando la dimensione che hai fissato tu. Se vuoi posizionare un pulsante al centro del frame (mantenendone le dimensioni scelte) stai usando il layout manager sbagliato.

    Studia http://download.oracle.com/javase/tu...out/using.html
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  8. #8
    io sto cercando di posizionare il mio bottone dove voglio ,dando un cor.. x,y

  9. #9
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,477

    Moderazione

    Originariamente inviato da metalsalvax
    inesperto...
    Invito a usare titoli più significativi rispetto a quello indicato, e a leggere il Regolamento di quest'area per conoscere le norme da seguire nell'apertura e conduzione delle discussioni.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  10. #10
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Originariamente inviato da metalsalvax
    io sto cercando di posizionare il mio bottone dove voglio ,dando un cor.. x,y
    Allora devi disabilitare il layout manager usando setLayout(null).

    Poi potrai posizionare il componente dove vuoi usando setSize() + setLocation() oppure setBounds().
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

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