- Bienvenue
- Les pré-requis
- Installation de outils et logiciels
- Historique de Java Swing
- Notre première fenêtre
- Challenge 1: Hallo Welt
- Les classes anonymes
- Challenge 2: Hallo Anonymous Welt
- Refactoring
- Challenge 3: Amélioration de l'application Hallo Anonymous Welt
- Challenge 4: Spécifier les dimensions à l'initialisation
- Création de l’interface
- Challenge 5: Le solitaire
- Le BoxLayout Manager
- Challenge 6: Le solitaire dans une boîte
- Rajouter des écouteurs d’évènements: Méthode 1
- Challenge 7: Le solitaire à l'écoute!
- Conventions de nommage et Tooltips
- Rajouter des écouteurs d’évènements: Méthode 2
- Challenge 8: Le solitaire toujours à l'écoute
- Rajouter des écouteurs d’évènements: Méthode 3
- Challenge 9: Le solitaire et son écouteur
- Rajouter des écouteurs d’évènements: Méthode 4
- Challenge 10: Le solitaire et lui-même
- La théorie derrière le système d'écouteurs d'évènements
- Les boîtes de dialogue avec JOptionPane
- Labels, Icônes et Images
- Meilleur emplacement pour les ressources
- Challenge 11: Parlons Code
- Effet de rollover sur les boutons
- Premier Kata
- Présentation de l'application
- Création de l'interface: Le BorderLayout
- Challenge 12: À chacune sa soirée!
- Création de l'interface: Les Borders et le RootPane
- Challenge 13: À chacune sa bordure!
- Création de l'interface: JComponent, Container & Content Pane
- Challenge 14: À chacune son JComponent!
- Création de l'interface: JPanel, setContentPane
- Challenge 15: À chacune son JPanel!
- Création de l'interface: Les polices
- Challenge 16: À chacun son style!
- Polices Sérif vs Sans-Sérif
- Système de numérotation binaire, décimal, octal, hexadécimal
- Challenge 17: Un peu de conversion
- Création de l'interface: Les couleurs (RGB, Hexadécimal)
- Challenge 18: Quantités de rouge, vert et bleu utilisées
- Challenge 19: Google à la rescousse
- Challenge 20: À chacune sa couleur
- Création de l'interface: Insets, Margin, Padding
- Challenge 21: À chacune son espace
- Écouteurs d'évènements
- Challenge 22: À chacune sa soirée
- Refactoring: La classe FactStore
- Challenge 23: Une maison pour tout le monde
- La classe ColorPalette
- Challenge 24: À chaque soirée sa couleur
- Icônes de fenêtre
- Challenge 25: À chacune son icône
- Second Kata
- Présentation de l'application
- Création de l'interface: Les méthodes setLocationByPlatform et pack
- Création de l'interface: Le GridLayout
- Challenge 26: Calculateur de taxes
- Création de l'interface: GridBagLayout & GridBagConstraints
- Le JSlider et ses ticks
- Création de l'interface: Le GridBagLayout en pratique
- Challenge 27: Rencontre sous contraintes avec le GridBagLayout!
- Création de l'interface: Les méthodes setEditable et setFocusable
- Challenge 28: Des champs de texte spéciaux!
- Les caprices de la méthode setLocationRelativeTo
- Rajouter un écouteur d'évènements au slider
- Challenge 29: Faites glisser le slider!
- Formater un pourcentage avec NumberFormat
- Challenge 30: 100% de Merci à NumberFormat
- Calcul du pourboire et du montant total
- Challenge 31: Calcul des taxes et du montant total
- Formater un montant avec NumberFormat
- Challenge 32: $30 de pourboire à NumberFormat
- La classe BigDecimal
- Challenge 33: Stoppons l'hémoragie des pertes de précision
- Ne jamais faire confiance à l'utilisateur
- Challenge 34: Les bons comptes font les bons amis
- Look and Feel
- Challenge 35: Changer d'apparence comme bon nous semble
- Challenge 36: Éviter les duplications
- Troisième Kata
- Présentation de l'application
- Création de l'interface (JTextArea)
- Création de l'interface (Pack)
- Création de l'interface (JScrollPane)
- Conventions de nommage
- Les threads avec Swing
- OutputStreamWriter, Writer, OutputStream
- Rajouter un écouteur d'évènement sur un JTextField