Comprend pas la difference entre panneau et fenetre en SWING [Résolu/Fermé]
Signaler
Jadorelinfo
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
A voir également:
- Comprend pas la difference entre panneau et fenetre en SWING
- Comprend pas la difference entre panneau et fenetre en SWING ✓ - Forum - Java
- Comment ouvrir 2 fichiers excel dans 2 fenêtres différentes ✓ - Forum - Excel
- Ouvrir excel 2 fenetres differentes - Conseils pratiques - Excel
- Garder 2 fenetres différentes ouvertes ✓ - Forum - Windows
- "Où trouver le panneau de configuration" différent du tuto! ✓ - Forum - Windows 10
8 réponses
KX
- Messages postés
- 16256
- Date d'inscription
- samedi 31 mai 2008
- Statut
- Modérateur
- Dernière intervention
- 27 février 2021
Bonjour,
Graphiquement une JFrame va avoir un titre, des boutons pour réduire, agrandir ou fermer la fenêtre. C'est le cadre principal de n'importe quelle application graphique depuis plus de 20 ans.
Un JPanel est une zone dans la fenêtre, une division de son espace. Graphiquement il peut être visible (grace à une couleur de fond ou des bordures) dans ce cas tu verras un rectangle à l'intérieur de la fenêtre. Mais souvent un Panel est invisible, c'est un conteneur pour la mise en forme donc on se limitera à n'afficher que son contenu.
Graphiquement une JFrame va avoir un titre, des boutons pour réduire, agrandir ou fermer la fenêtre. C'est le cadre principal de n'importe quelle application graphique depuis plus de 20 ans.
Un JPanel est une zone dans la fenêtre, une division de son espace. Graphiquement il peut être visible (grace à une couleur de fond ou des bordures) dans ce cas tu verras un rectangle à l'intérieur de la fenêtre. Mais souvent un Panel est invisible, c'est un conteneur pour la mise en forme donc on se limitera à n'afficher que son contenu.
ProvencaleLeGaulois
- Messages postés
- 48
- Date d'inscription
- lundi 2 juin 2014
- Statut
- Membre
- Dernière intervention
- 18 septembre 2014
OK,
Il faut que tu fasse un mix de Layouts.
Il te faut un container principal avec un BorderLayout :
https://docs.oracle.com/javase/tutorial/uiswing/layout/border.html
En gros ton interface devra être gaulée comme ça :
Ça devrait fonctionner, ensuite tu peux t'amuser à redimensionner les boutons pour avoir exactement le même rendu que l'image d'exemple.
A+
Il faut que tu fasse un mix de Layouts.
Il te faut un container principal avec un BorderLayout :
https://docs.oracle.com/javase/tutorial/uiswing/layout/border.html
En gros ton interface devra être gaulée comme ça :

Ça devrait fonctionner, ensuite tu peux t'amuser à redimensionner les boutons pour avoir exactement le même rendu que l'image d'exemple.
A+
ProvencaleLeGaulois
- Messages postés
- 48
- Date d'inscription
- lundi 2 juin 2014
- Statut
- Membre
- Dernière intervention
- 18 septembre 2014
Bonjour,
Un JFrame est un composant qui s'affiche à l'écran (en gros, c'est un cadre VIDE dans lequel on peut mettre des choses). A part la couleur du fond ce composant ne peut pas afficher grand chose.
Il faut donc l'alimenter avec des composants graphiques, dont le JPanel.
Un JPanel est un composant graphique dans lequel tu peux organiser l'agencement de tes composants (TextField, JLabel...).
MAIS tu ne peux pas afficher un JPanel si tu ne le met pas dans un JFrame.
Pour faire une vue de l'esprit on pourrait comparer ça à un paperboard.
Le JFrame c'est le cadre sur lequel on accroche les feuilles, et le JPanel c'est une feuille.
En tout cas c'est comme ça que je vois les choses et ça marche bien :p
A+
Un JFrame est un composant qui s'affiche à l'écran (en gros, c'est un cadre VIDE dans lequel on peut mettre des choses). A part la couleur du fond ce composant ne peut pas afficher grand chose.
Il faut donc l'alimenter avec des composants graphiques, dont le JPanel.
Un JPanel est un composant graphique dans lequel tu peux organiser l'agencement de tes composants (TextField, JLabel...).
MAIS tu ne peux pas afficher un JPanel si tu ne le met pas dans un JFrame.
Pour faire une vue de l'esprit on pourrait comparer ça à un paperboard.
Le JFrame c'est le cadre sur lequel on accroche les feuilles, et le JPanel c'est une feuille.
En tout cas c'est comme ça que je vois les choses et ça marche bien :p
A+
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
merçi
Je comprends a présent, sinon j'ai une autre question a propos des layout manager, je trouve que c'est une grosse galere pour (re)dimensionner a sa guise, par exemple je veux faire une calculatrice voici la photo:

A ton avis, quel layout est le plus approprié, sachat que j'ai essayé mainte fois le gridLayout et impossible de disposer comme sur l'image??
Je comprends a présent, sinon j'ai une autre question a propos des layout manager, je trouve que c'est une grosse galere pour (re)dimensionner a sa guise, par exemple je veux faire une calculatrice voici la photo:

A ton avis, quel layout est le plus approprié, sachat que j'ai essayé mainte fois le gridLayout et impossible de disposer comme sur l'image??
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
La je dis chapeau Mr le Gaulois :) clair et précis.
Je passe au code maintenant et normalement ça devrait le faire.
merçi
@+
Je passe au code maintenant et normalement ça devrait le faire.
merçi
@+
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
j'ai plusieurs problémes, le carré bleu reste en haut, le marron est en dessous du bleu et le vert a droite du bleu , tu as une idée de quoi qui beug??
et en marron et vert, c'est des GridBagLayout??
et en marron et vert, c'est des GridBagLayout??
ProvencaleLeGaulois
- Messages postés
- 48
- Date d'inscription
- lundi 2 juin 2014
- Statut
- Membre
- Dernière intervention
- 18 septembre 2014
Tu peux montrer une copie d'écran ?
Non c'est bien des GridLayout (les GridBagLayout c'est trop compliqué à utiliser en général...)
Non c'est bien des GridLayout (les GridBagLayout c'est trop compliqué à utiliser en général...)
Jadorelinfo
- Messages postés
- 51
- Date d'inscription
- samedi 24 mai 2014
- Statut
- Membre
- Dernière intervention
- 15 avril 2016
non c'est bon, ça marche trés bien c'est juste:
j'ai importé java.awt et il fallait java.awt.BorderLayout.
J'ai perdu des heures a cause de ça, je croyais que java.awt englobé tout mais en fait non.
Sinon, j'ai le dernier bloc qui ne rentre pas en une ligne et le jlabel un peu trop mince.

j'ai importé java.awt et il fallait java.awt.BorderLayout.
J'ai perdu des heures a cause de ça, je croyais que java.awt englobé tout mais en fait non.
Sinon, j'ai le dernier bloc qui ne rentre pas en une ligne et le jlabel un peu trop mince.
