probleme de taille avec un JTextField [java swing] - Java - Programmation
Marsh Posté le 14-01-2004 à 09:38:52
Le nombre de colonnes que tu specifies dans le constructeur est utilise pour calculer la taille preferentielle du composant (cf Javadoc)
donc avec un GridLayout, vu que la taille preferentielle n'est pas utilisee, ca sert a rien.
conclusion, utilise un autre Layout
Marsh Posté le 14-01-2004 à 10:26:14
si tu peux pas changer de layout, tu peux pas non-plus utiliser le layout adapté, c'est tout.
Marsh Posté le 14-01-2004 à 11:36:50
ou alors tu peux recreer un composant a toi aussi
ca doit pas etre bien dur en creant une sous-classe de JTextField et tu surcharges les methodes qui vont bien...nan ?
Marsh Posté le 14-01-2004 à 12:12:07
souk a écrit : ou alors tu peux recreer un composant a toi aussi |
nan, au pire, il fout le JTextField dans un JPanle qui un layout différent et il insère le jpanel à la place du JTextField, mais GridBagLayout est fait pour faire ce qu'il veut.
C'est vrai que GridBagLayout demande un apprentissage, mais on est vachement récompensé après.
Marsh Posté le 17-01-2004 à 16:41:43
oui, ou même si tu utilises un BoxLayout en prenant bien soin de donner comme taille maximum à ton JTextField égale à sa taille préférée :
Code :
|
Normalment ca peut suffir, et ca evitera le GridBagLayout, même si je pense que le GridBagLayout mérite d'être appris !
Marsh Posté le 17-01-2004 à 17:07:12
il a dit qu'il pouvait pas changer de Layout
et la solution de sieur nraynaud convient
Marsh Posté le 17-01-2004 à 18:32:57
jpanel avec un flowlayout et le jtextfield dedans tout ca dans UNE "case" du panel pere en gridlayout.
c un peu crad, mais bon c swing koi
Marsh Posté le 14-01-2004 à 09:34:44
'lut tt le monde
voila j'ai un petit probleme...
je cree un JTExField comme ca :
JTextField toto = new JTextField(20);
et quand j'insere ca dans mon JPanel, (avec un gridLayout) la taille n'est plus la bonne (ca passe a 60 au lieu de 20)
y a t il un moyen de le forcer a laisser 20 ?