È possibile utilizzare più di 1 gestore di layout in Java. In questo momento sto usando un gridLayout per implementare una scacchiera ma al di sotto di questo vorrei mettere qualche altra roba ma non in un gridLayout. Forse un FlowLayout o qualche altro layout. Come potrei fare questo? Grazie!Gestori di layout multipli in Java
risposta
C'è modo di utilizzare più di 1 layout gestore in Java.
Assolutamente. In effetti, usare più gestori di layout è la norma.
Come potrei fare?
Qualsiasi Container
sottoclasse può avere un LayoutManager
e contengono elementi figlio. E ciascuno di questi elementi figlio può essere esso stesso un Container
con bambini. Il contenitore più comunemente utilizzato sotto i frame di livello superiore è JPanel
.
Per esempio, probabilmente si dovrebbe utilizzare un BorderLayout
per il telaio, mettere un JPanel
con la griglia nella sua posizione centrale (perché questo è quello che ottiene tutto lo spazio rimanente disponibile quando le altre posizioni sono state date le loro dimensioni preferite) e un altro JPanel
con "altre cose" nella posizione SUD.
Maggiori dettagli possono essere trovati nel Swing tutorial on layout managers.
Sì, tutto ciò che serve è quello di pianificare la vostra su tutto UI layout (ie; Finestra, quadro master ecc)
Per esempio, è necessario mettere qualcosa sotto la scacchiera, che normalmente andare con un BorderLayout a il livello base.
Supponiamo quindi di avere un JPanel chiamato masterPanel, che contiene tutti i componenti della mia app di scacchi. Quindi, il codice sarebbe:
JPanel masterPanel = new JPanel(new BorderLayout());
JPanel chessBoardPanel = createChessboardPanel(); //assuming this method will return a
//JPanel with chess board using GridLayout
JPanel infoPanel = new JPanel(); //this is the panel that would contain info elements, that //may go below my chess board.
//Now add everything to master panel.
masterPanel.add(chessBoardPanel, BorderLayout.CENTER);
masterPanel.add(infoPanel, BorderLayout.PAGE_END);
//add masterPanel to your window (if required)
this.getContentPane().add(masterPanel);
- 1. Layout multipli in ror
- 2. nanoc e layout multipli
- 3. Delphi VCL per Win32 - gestori di eventi multipli
- 4. Modifica gestori layout per viste diverse in RecyclerView
- 5. Metodi multipli main() in java
- 6. Ping server multipli in Java
- 7. Layout di tastiera multipli in un'estensione per tastiera iOS
- 8. Layout multipli con Handlebars e ExpressJS?
- 9. Layout multipli per diversi moduli - Zend Framework
- 10. Suoni multipli Java
- 11. Java Generics: Bounds multipli
- 12. correttamente il rendering layout multipli per controller in Rails
- 13. File di layout multipli nel framework express node.js
- 14. Utilizzo simultaneo di gestori di pacchetti front-end multipli (Bower, NuGet)
- 15. Layout verticale Java?
- 16. Layout swing Java
- 17. Implementazione del layout forzata in Java
- 18. Rimozione gestori di eventi
- 19. Ordine di notificare gestori
- 20. Parametri multipli in MyBatis?
- 21. Test unità Java, layout di directory
- 22. Centro verticale di gestione layout Java
- 23. Database multipli Mybatis Spring Configurazione Java
- 24. Gestore pacchetti multipli
- 25. gestori e perdite di memoria in Android
- 26. Costo dei gestori di eccezioni in Python
- 27. Java Importazione di org-jdesktop-layout in Netbeans
- 28. In attesa di eventi multipli
- 29. Java/clojure: delimitatore di caratteri multipli e mantenere il delimitatore
- 30. Connessione di debugger multipli a un debugger (Java, JPDA)