Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment
sur un problème certainement très bête en faisant des tests pour bien
comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai
que cette JFrame contienne un JPanel, centré verticalement et
hrorizontalement au milieu d'elle de telle manière que si la JFrame a un
fond bleu on voie le contenu du JPanel entouré de bandes bleues.
Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en
fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer
horizontalement mais le JPanel reste "collé au plafond". J'ai testé
aussi un BorderLayout avec le constructeur permettant de spécifier les
hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un
FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement
absolu en calculant ou vérifiant toutes les tailles parce que je me dis
qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Gaetan Zoritchak
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep Tu peux positionner ton panel grâce à une implémentation LayoutManager
genre :
public void layoutContainer(Container parent){ Component panel = parent.getComponents()[0]; int width = panel.getPreferredSize().width(); //Calcul de x,y en fonction du parent ... panel.setBounds(x,y, width, height); }
Autrement utilise le FormLayout de jgoodies http://www.jgoodies.com/freeware/forms/ et définis un formulaire avec 3 lignes et 3 colonnes de la façon suivante:
FormLayout layout = new FormLayout( 0:grow, pref,0:grow, 0:grow, pref,0:grow); }
puis ajoute ton panel sur la 2ème ligne, 2ème colonne.
-- Gaetan Zoritchak Gestion de bug en mode ASP sous java http://eap.bug-sweeper.fr
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment
sur un problème certainement très bête en faisant des tests pour bien
comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai
que cette JFrame contienne un JPanel, centré verticalement et
hrorizontalement au milieu d'elle de telle manière que si la JFrame a un
fond bleu on voie le contenu du JPanel entouré de bandes bleues.
Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en
fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer
horizontalement mais le JPanel reste "collé au plafond". J'ai testé
aussi un BorderLayout avec le constructeur permettant de spécifier les
hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un
FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement
absolu en calculant ou vérifiant toutes les tailles parce que je me dis
qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep
Tu peux positionner ton panel grâce à une implémentation LayoutManager
genre :
public void layoutContainer(Container parent){
Component panel = parent.getComponents()[0];
int width = panel.getPreferredSize().width();
//Calcul de x,y en fonction du parent
...
panel.setBounds(x,y, width, height);
}
Autrement utilise le FormLayout de jgoodies
http://www.jgoodies.com/freeware/forms/ et définis un formulaire avec 3
lignes et 3 colonnes de la façon suivante:
FormLayout layout = new FormLayout(
0:grow, pref,0:grow,
0:grow, pref,0:grow);
}
puis ajoute ton panel sur la 2ème ligne, 2ème colonne.
--
Gaetan Zoritchak
Gestion de bug en mode ASP sous java
http://eap.bug-sweeper.fr
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep Tu peux positionner ton panel grâce à une implémentation LayoutManager
genre :
public void layoutContainer(Container parent){ Component panel = parent.getComponents()[0]; int width = panel.getPreferredSize().width(); //Calcul de x,y en fonction du parent ... panel.setBounds(x,y, width, height); }
Autrement utilise le FormLayout de jgoodies http://www.jgoodies.com/freeware/forms/ et définis un formulaire avec 3 lignes et 3 colonnes de la façon suivante:
FormLayout layout = new FormLayout( 0:grow, pref,0:grow, 0:grow, pref,0:grow); }
puis ajoute ton panel sur la 2ème ligne, 2ème colonne.
-- Gaetan Zoritchak Gestion de bug en mode ASP sous java http://eap.bug-sweeper.fr
phep
Gaetan Zoritchak wrote:
Tu peux positionner ton panel grâce à une implémentation LayoutManager
[ ... ]
Merci pour l'idée, mais sur le fond c'est ce que je voulais éviter : avoir à faire le calcul de positionnement "à la main".
Autrement utilise le FormLayout de jgoodies [ ... ]
Ça semble faire parfaitement ce que je veux et surtout "comme" je veux, je vais donc essayer de ce pas. Mais celà semble donc confirmer ce que je ne voulais pas croire : un Container ne "sait pas", via l'API standard, centrer son contenu... Bon, à vrai dire c'est pas un "besoin" que j'ai (pas de projet qui repose là dessus), je voulais juste voir "ce qu'on pouvait faire". Peut-être n'y a-t-il pas de vrais besoins, je sais pas...
Merci beaucoup en tous les cas.
phep
Gaetan Zoritchak wrote:
Tu peux positionner ton panel grâce à une implémentation LayoutManager
[ ... ]
Merci pour l'idée, mais sur le fond c'est ce que je voulais éviter :
avoir à faire le calcul de positionnement "à la main".
Autrement utilise le FormLayout de jgoodies
[ ... ]
Ça semble faire parfaitement ce que je veux et surtout "comme" je veux,
je vais donc essayer de ce pas. Mais celà semble donc confirmer ce que
je ne voulais pas croire : un Container ne "sait pas", via l'API
standard, centrer son contenu... Bon, à vrai dire c'est pas un "besoin"
que j'ai (pas de projet qui repose là dessus), je voulais juste voir "ce
qu'on pouvait faire". Peut-être n'y a-t-il pas de vrais besoins, je sais
pas...
Tu peux positionner ton panel grâce à une implémentation LayoutManager
[ ... ]
Merci pour l'idée, mais sur le fond c'est ce que je voulais éviter : avoir à faire le calcul de positionnement "à la main".
Autrement utilise le FormLayout de jgoodies [ ... ]
Ça semble faire parfaitement ce que je veux et surtout "comme" je veux, je vais donc essayer de ce pas. Mais celà semble donc confirmer ce que je ne voulais pas croire : un Container ne "sait pas", via l'API standard, centrer son contenu... Bon, à vrai dire c'est pas un "besoin" que j'ai (pas de projet qui repose là dessus), je voulais juste voir "ce qu'on pouvait faire". Peut-être n'y a-t-il pas de vrais besoins, je sais pas...
Merci beaucoup en tous les cas.
phep
Symon
Euh, si j'ai bien compris un BorderLayout devrais faire l'affaire... ?
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des composants).
Bon courage avec les LayoutManager, on galère au début, mais on arrive vite à faire des choses très évoluées.
A+
Symon
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep
Euh, si j'ai bien compris un BorderLayout devrais faire l'affaire... ?
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu
veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans
ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu
veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des
composants).
Bon courage avec les LayoutManager, on galère au début, mais on arrive
vite à faire des choses très évoluées.
A+
Symon
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment
sur un problème certainement très bête en faisant des tests pour bien
comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai
que cette JFrame contienne un JPanel, centré verticalement et
hrorizontalement au milieu d'elle de telle manière que si la JFrame a un
fond bleu on voie le contenu du JPanel entouré de bandes bleues.
Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en
fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer
horizontalement mais le JPanel reste "collé au plafond". J'ai testé
aussi un BorderLayout avec le constructeur permettant de spécifier les
hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un
FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement
absolu en calculant ou vérifiant toutes les tailles parce que je me dis
qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des composants).
Bon courage avec les LayoutManager, on galère au début, mais on arrive vite à faire des choses très évoluées.
A+
Symon
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep
Black Myst
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
Avec un GridBagLayout on peut faire ce que tu veux... c'est pas le plus simple des layout manager à maitriser, mais il permet de faire quand meme beaucoup de chose :-)
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep
phep wrote:
Bonjour,
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment
sur un problème certainement très bête en faisant des tests pour bien
comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai
que cette JFrame contienne un JPanel, centré verticalement et
hrorizontalement au milieu d'elle de telle manière que si la JFrame a un
fond bleu on voie le contenu du JPanel entouré de bandes bleues.
Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en
fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer
horizontalement mais le JPanel reste "collé au plafond". J'ai testé
aussi un BorderLayout avec le constructeur permettant de spécifier les
hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un
FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement
absolu en calculant ou vérifiant toutes les tailles parce que je me dis
qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
Avec un GridBagLayout on peut faire ce que tu veux... c'est pas le plus
simple des layout manager à maitriser, mais il permet de faire quand
meme beaucoup de chose :-)
Je démarre avec Swing et je m'arrache les cheveux depuis un bon moment sur un problème certainement très bête en faisant des tests pour bien comprendre les techniques de positionnement.
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Au mieux, avec un BoxLayout appliqué sur la JFrame, je réussis à centrer horizontalement mais le JPanel reste "collé au plafond". J'ai testé aussi un BorderLayout avec le constructeur permettant de spécifier les hgap et vgap mais sans plus de succès, itou avec le GridLayout. Un FlowLayout ne m'aide pas pour l'alignement vertical...
La seule méthode que je n'ai pas encore testée c'est le positionnement absolu en calculant ou vérifiant toutes les tailles parce que je me dis qu'il doit bien y avoir un moyen mon char à boeuf de faire ça, non ?
Avec un GridBagLayout on peut faire ce que tu veux... c'est pas le plus simple des layout manager à maitriser, mais il permet de faire quand meme beaucoup de chose :-)
L'ami google ne m'a pas dit grand chose...
Merci d'avance pour toute piste,
phep
phep
Symon wrote:
Euh, si j'ai bien compris un BorderLayout devrais faire l'affaire... ?
Hé non, ça c'était mon premier essai. L'effet, comme tu le dis, est que le panel _remplit_ la frame. Les spec (si je les ai bien lues) précisent d'ailleurs bien qu'avec BorderLayout.CENTER le "contenu" remplit le plus de place possible dans le contenant (et il ignore les setMaximumSize() d'après mes tests). Donc je n'ai pas mes marges.
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des composants).
GridBagLayout j'ai regardé l'API mais pas vraiment testé, j'avoue. J'ai essayé avec GridLayout et ça ne marche pas puisque, dans ce cas d'école, les marges que je veux sont de la même taille que l'élément central - or, tant qu'à y être, je préfère que les deux soient dissociés ;-).
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message de BlackMyst.
Sinon la solution FormLayout de jgoodies donnée par Gaetan semble marcher mais ça implique un package spécifique.
Bon courage avec les LayoutManager, on galère au début, mais on arrive vite à faire des choses très évoluées.
Finalement c'est pas si pire que ce que je craignais lorsque j'ai regardé l'API pour la première fois. Mais bon, y a encore de quoi lire et tester...
Merci à tous,
phep
Symon wrote:
Euh, si j'ai bien compris un BorderLayout devrais faire l'affaire... ?
Hé non, ça c'était mon premier essai. L'effet, comme tu le dis, est que
le panel _remplit_ la frame. Les spec (si je les ai bien lues) précisent
d'ailleurs bien qu'avec BorderLayout.CENTER le "contenu" remplit le plus
de place possible dans le contenant (et il ignore les setMaximumSize()
d'après mes tests). Donc je n'ai pas mes marges.
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu
veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans
ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu
veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des
composants).
GridBagLayout j'ai regardé l'API mais pas vraiment testé, j'avoue. J'ai
essayé avec GridLayout et ça ne marche pas puisque, dans ce cas d'école,
les marges que je veux sont de la même taille que l'élément central -
or, tant qu'à y être, je préfère que les deux soient dissociés ;-).
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message
de BlackMyst.
Sinon la solution FormLayout de jgoodies donnée par Gaetan semble
marcher mais ça implique un package spécifique.
Bon courage avec les LayoutManager, on galère au début, mais on arrive
vite à faire des choses très évoluées.
Finalement c'est pas si pire que ce que je craignais lorsque j'ai
regardé l'API pour la première fois. Mais bon, y a encore de quoi lire
et tester...
Hé non, ça c'était mon premier essai. L'effet, comme tu le dis, est que le panel _remplit_ la frame. Les spec (si je les ai bien lues) précisent d'ailleurs bien qu'avec BorderLayout.CENTER le "contenu" remplit le plus de place possible dans le contenant (et il ignore les setMaximumSize() d'après mes tests). Donc je n'ai pas mes marges.
Ton panel s'aggrandira pour remplir la frame, après, tu met ce que tu veux dedans. Si j'ai bien compris, c'est une sorte de formulaire... Dans ce cas, un GridBagLayout convient parfaitement (ou un GridLayout si tu veux faire simple, mais tu ne pourras pas ajuster le poid de chacun des composants).
GridBagLayout j'ai regardé l'API mais pas vraiment testé, j'avoue. J'ai essayé avec GridLayout et ça ne marche pas puisque, dans ce cas d'école, les marges que je veux sont de la même taille que l'élément central - or, tant qu'à y être, je préfère que les deux soient dissociés ;-).
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message de BlackMyst.
Sinon la solution FormLayout de jgoodies donnée par Gaetan semble marcher mais ça implique un package spécifique.
Bon courage avec les LayoutManager, on galère au début, mais on arrive vite à faire des choses très évoluées.
Finalement c'est pas si pire que ce que je craignais lorsque j'ai regardé l'API pour la première fois. Mais bon, y a encore de quoi lire et tester...
Merci à tous,
phep
phep
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message de BlackMyst.
Bingo ! De loin la plus simple solution.
En plus très chouette finalement ce GridBagLayout.
Merci encore à tous,
phep
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message
de BlackMyst.
Bingo ! De loin la plus simple solution.
En plus très chouette finalement ce GridBagLayout.
Je vais re-jeter un coup d'oeil à GridBagLayout néanmoins, vu le message de BlackMyst.
Bingo ! De loin la plus simple solution.
En plus très chouette finalement ce GridBagLayout.
Merci encore à tous,
phep
Hervé AGNOUX
phep wrote:
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec un BorderLayout ?
-- Hervé AGNOUX http://www.diaam-informatique.com
phep wrote:
Soit une appli très basique avec une JFrame à la base, je souhaiterai
que cette JFrame contienne un JPanel, centré verticalement et
hrorizontalement au milieu d'elle de telle manière que si la JFrame a un
fond bleu on voie le contenu du JPanel entouré de bandes bleues.
Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en
fonction de la taille de son contenu.
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec
un BorderLayout ?
Soit une appli très basique avec une JFrame à la base, je souhaiterai que cette JFrame contienne un JPanel, centré verticalement et hrorizontalement au milieu d'elle de telle manière que si la JFrame a un fond bleu on voie le contenu du JPanel entouré de bandes bleues. Idéalement, le JPanel pourrait se redimensionner (en + ou en-) en fonction de la taille de son contenu.
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec un BorderLayout ?
-- Hervé AGNOUX http://www.diaam-informatique.com
phep
Hervé AGNOUX wrote:
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec un BorderLayout ?
Le code est on ne peut plus court c'est vrai, mais les marges restent statiques, en fonction de la valeurs des insets du bord bleu. Avec le GridBagLayout, les bordures sont dynamiques dans la frame, en fonction du contenu du panel qui reste géré de manière "normale".
Bon, à vrai dire, j'ai pas de besoin précis ; comme je l'ai déjà dit, je cherche juste à voir "ce qu'on peut tirer du bousin". Après on voit selon les besoins d'un projet particulier.
Un grand et sincère merci à tous en tout cas, j'ai pas perdu ma journée :-).
phep
Hervé AGNOUX wrote:
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec
un BorderLayout ?
Le code est on ne peut plus court c'est vrai, mais les marges restent
statiques, en fonction de la valeurs des insets du bord bleu. Avec le
GridBagLayout, les bordures sont dynamiques dans la frame, en fonction
du contenu du panel qui reste géré de manière "normale".
Bon, à vrai dire, j'ai pas de besoin précis ; comme je l'ai déjà dit, je
cherche juste à voir "ce qu'on peut tirer du bousin". Après on voit
selon les besoins d'un projet particulier.
Un grand et sincère merci à tous en tout cas, j'ai pas perdu ma journée :-).
Et un JPanel avec un bord bleu, placé au centre d'une JFrame disposée avec un BorderLayout ?
Le code est on ne peut plus court c'est vrai, mais les marges restent statiques, en fonction de la valeurs des insets du bord bleu. Avec le GridBagLayout, les bordures sont dynamiques dans la frame, en fonction du contenu du panel qui reste géré de manière "normale".
Bon, à vrai dire, j'ai pas de besoin précis ; comme je l'ai déjà dit, je cherche juste à voir "ce qu'on peut tirer du bousin". Après on voit selon les besoins d'un projet particulier.
Un grand et sincère merci à tous en tout cas, j'ai pas perdu ma journée :-).