Je travaille avec Swing depuis un moment maintenant, mais le modèle/la structure entière de JFrame
s, paint()
, super
, etc est tout trouble dans mon esprit. J'ai besoin d'une explication claire ou d'un lien expliquant comment le système GUI est organisé.Java GUI Swing Modèle Explication
Répondre
La même chose m'est arrivée. En fait, à ce jour, je ne comprends pas à 100% comment tout cela fonctionne.
Swing est un framework très flexible - peut-être trop flexible. Avec la flexibilité vient beaucoup d'abstraction et avec l'abstraction vient la confusion. :)
J'ai trouvé les articles suivants dignes d'intérêt. Ils m'ont aidé à mieux comprendre la grande image de Swing.
- A Swing Architecture Overview
The process of installing a UI delegate, qui est juste cette image:
Ils expliquent très bien comment le modèle et le travail des délégués. Il me pousse toujours en colère quand je vois les JLabel
, LabelUI
, ui.update
, etc.
Avez-vous regardé le didacticiel Java Swing (cliquez sur here)? Il fait un bon travail de couvrir les bases du développement d'applications Swing.
Filthy Rich Clients par Chet Haase et Romain Guy est un grand livre sur Java UI. Il couvre aussi des sujets plus avancés, mais l'introduction et quelques premiers chapitres expliquent bien les choses fondamentales.
Si, après avoir lu le didacticiel Swing, vous vous intéressez à des sujets plus avancés, vous pouvez également consulter le document Swing Second Edition de Robinson and Vorobiev.
Depuis cette question est étiqueté JFrame
, je vais vous suggérer quelques liens pour comprendre comment fonctionnent les JFrame
s et d'autres conteneurs Swing de haut niveau.
J'ai également trouvé que Swing était (et est toujours) très impliqué et que jeter un oeil à la documentation fournie par Sun est nécessaire de temps en temps - Chaque fois que je vérifie, je semble apprendre quelque chose de nouveau.
Tout d'abord, les bases: JFrame
classe à partir des spécifications de l'API Java. Les spécifications de l'API Java fournissent souvent de bonnes informations détaillées sur les classes. Dans ce cas, vous remarquerez qu'il existe plusieurs liens tels que la section How to Make Frames dans les tutoriels Java. En dehors de cela, je vous recommande également de regarder le Lesson: Using Swing Components de The Java Tutorials. La leçon fournit des instructions sur l'utilisation des composants fournis dans Swing ainsi que des exemples utiles.
Pour plus de détails spécifiques que j'ai trouvé confus lorsque j'ai commencé avec Swing était tous les différents types de volets, tels que le ContentPane
, RootPane
, GlassPane
. La section Using Top-Level Containers fournit des informations et des diagrammes utiles sur la hiérarchie de conteneur des conteneurs de niveau supérieur. La section How to Use Root Panes aborde les détails des panneaux de verre, de calque et de contenu avec de nombreux exemples.
J'ai trouvé que simplement naviguer dans le code source (ctrl-clic sur un nom si vous utilisez NetBeans) a été très utile. Si je vois une méthode dans la boîte de dialogue de complétion que je ne connais pas, je clique simplement sur "Aller à la source" et regarde autour de moi jusqu'à ce que je sois à l'aise.
J'ai trouvé Swing Explorer être un outil précieux pour comprendre la hiérarchie des composants (en particulier dans les interfaces graphiques complexes) et regarder les propriétés (hélas, en lecture seule: nous nous habituons à la commodité Firebug!). Il a un plugin Eclipse.
- 1. JAVA Swing GUI Composants comment afficher RTL?
- 2. Java AWT ou Swing pour la construction GUI?
- 3. Java GUI Design Advice
- 4. Meilleur éditeur Java GUI
- 5. Fenêtre Swing Java corrompue
- 6. Explication de l'appariement de modèle vs commutateur
- 7. Cadre de création Java GUI
- 8. AutoIt like GUI outil d'automatisation pour Java
- 9. Problème avec Java GUI
- 10. GoogleEarth dans Java Swing
- 11. Java Swing Table taille
- 12. Java Swing Problème
- 13. Java Swing JTree Expansion
- 14. PropertyGrid dans Java Swing
- 15. Positionnement en java swing
- 16. JFreeChart pour les graphiques xy dynamiques dans l'application java swing gui
- 17. Pourquoi la plate-forme GUI de Java est-elle nommée "Swing?"
- 18. Comment définir une image en arrière-plan pour Frame dans Swing GUI de Java?
- 19. Quel framework Java GUI choisir maintenant?
- 20. Composant GUI de liste de propriétés dans Swing
- 21. Java Inetaddress, Swing étend et jette Exception
- 22. Java GUI Création de composants
- 23. Java StackTrace Editor ou GUI
- 24. Curseur Java Swing Range U.I
- 25. java swing graphiques couleur mélange
- 26. Comment intégrer Webcam dans l'application Swing de Java?
- 27. Bibliothèque Java \ application pour construire des interfaces GUI frontend
- 28. Swing GUI: défilement non mis à jour quand un JTable devient plus grand
- 29. C# .NET 3.5 GUI design
- 30. Explication sur les annotations
Lien très utile - n'avait pas vu cela avant; mis en signet pour un examen plus approfondi plus tard. –
Yeahh ... Je ne me souviens pas comment je suis arrivé à ce lien. Je ne l'ai pas trouvé avant plusieurs années. Je ne connais pas la "recherche google" pour la produire non plus, donc je l'ai aussi dans mes signets. – OscarRyz
Les liens @OscarRyz sont morts. avez-vous la copie? J'ai besoin de ceux pour mes étudiants. Merci. – ihsan