- Récupérer le contenu d'un champ [JAVA] - Java - Programmation
Marsh Posté le 28-01-2003 à 20:06:45
zytrahus5 a écrit : salut, je butte décidément beaucoup sur mon projet.... |
si ton champ texte est de type JTextArea, t'as la méthode getText(). sinon précise le type exact.
Marsh Posté le 28-01-2003 à 20:19:37
gloop a écrit : |
JTextField c'est le type... est ce que c'est getText aussi ?
Marsh Posté le 28-01-2003 à 20:25:00
j'ai essayé getText() voilà ce qu'il me sort :
Exception occurred during event dispatching: |
Marsh Posté le 28-01-2003 à 20:27:21
c'est aussi getText(). En fait, les 2 classes (JTextArea et JTextField) héritent de JTextComponent et getText() est défini dans JTextComponent
Marsh Posté le 28-01-2003 à 20:28:08
gloop a écrit : c'est aussi getText(). En fait, les 2 classes (JTextArea et JTextField) héritent de JTextComponent et getText() est défini dans JTextComponent |
bah pourquoi j'ai cette erreur alors ?
Marsh Posté le 28-01-2003 à 20:29:02
zytrahus5 a écrit : j'ai essayé getText() voilà ce qu'il me sort :
|
C'est normal
si tu regardes la doc, c'est marqué que si le contenu est null (en gros si y a rien dedans) une exception NullPointerException est lancée. Faut que tu la captures et c'est bon.
Marsh Posté le 28-01-2003 à 20:30:28
bah pourtant, il est pas vide.... du moins pas celui là...
faut que tous les joints soient non vides ? meme ceux que je n'appelle pas avec getText ?
Marsh Posté le 28-01-2003 à 20:32:26
meme quand les champs sont pleins ça fait ça
mon code :
|
Marsh Posté le 28-01-2003 à 20:32:38
balance le code où ca foire.
oups c'est déjà fait
Marsh Posté le 28-01-2003 à 20:34:22
ReplyMarsh Posté le 28-01-2003 à 20:36:15
gloop a écrit : ajoute la gestion d'erreurs et dis ce que ca donne |
c'est quoi, je ne connais pas
Marsh Posté le 28-01-2003 à 20:38:21
ReplyMarsh Posté le 28-01-2003 à 20:39:06
ReplyMarsh Posté le 28-01-2003 à 20:39:28
zytrahus5 a écrit : c'est quoi, je ne connais pas |
la capture des exceptions
Code :
|
Marsh Posté le 28-01-2003 à 20:42:45
ReplyMarsh Posté le 28-01-2003 à 20:45:54
zytrahus5 a écrit : du coup, il ne me sort plus d'erreur |
ben forcément puisque tu viens de catcher ("attraper" ) l'erreur ...
tu veux pas lire la doc ?
Marsh Posté le 28-01-2003 à 20:49:47
HappyHarry a écrit : |
je fais ce projet comme je peux, on a eu aucun cours, ils nous balancent ça... j'y peux rien, s'ils en m'ont pas formé
je sais pas comment faire....
ça sert à quoi ce catch au juste ??
Marsh Posté le 28-01-2003 à 20:51:58
voilà mon code :
package mvt_planete; |
Marsh Posté le 28-01-2003 à 20:54:50
zytrahus5 a écrit : je fais ce projet comme je peux, on a eu aucun cours, ils nous balancent ça... j'y peux rien, s'ils en m'ont pas formé |
pour faire court:
quand tu veux signaler une erreur, tu la lances:
Code :
|
Pour toutes les parties pouvant générer des erreurs tu le mets dans un bloc try. Les catch permettent de choper les erreurs envoyés par throw
Code :
|
toutes les exceptions sont des objets de classes héritées de Exception ou qui implément l'interface Throwable.
Marsh Posté le 28-01-2003 à 20:54:54
hé merde je vais faillir a mes bonnes résolutions de la nouvelle année ...
t'as pas eu de formation ? et ben tu te la fais toi meme !!!
la doc elle est dispo, y a plein de tutos, y a des bouquins, t'as qu'a lire
ton code je m'en tamponne, j'vais meme pas le lire ...
Marsh Posté le 28-01-2003 à 20:58:47
gloop a écrit :
|
merci pour le coup de main. je laisse tomber.
Marsh Posté le 28-01-2003 à 21:03:21
moi je l'ai lu.
c'est une erreur classique : tu t'es trompé lors de l'initialisation : tu as déclaré un JTextField champ_nom local à la place d'initialiser l'attribut de ta classe du même nom => il reste vide => NullPointerException quand tu appelles getText dessus.
pour eviter ce genre de bourde, j'ai pris toujours mettre this.leNomDeLAttribut quand je fais référence à un attribut de la classe.
Marsh Posté le 28-01-2003 à 21:05:32
benou a écrit : moi je l'ai lu. |
merci c'est gentil, je vais essayer de corriger
Marsh Posté le 28-01-2003 à 21:07:57
benou a écrit : moi je l'ai lu. |
c'est bon, encore merci de ton aide.
Marsh Posté le 28-01-2003 à 21:08:07
zytrahus5 a écrit : merci c'est gentil, je vais essayer de corriger |
pourquoi essayer ???
t'as juste à virer les noms de classe devant les attributs que tu initialise dans la méthode ajout_planete(). Ca va marcher après !
Marsh Posté le 28-01-2003 à 21:08:54
ReplyMarsh Posté le 28-01-2003 à 21:19:02
j'ai fait de meme pour tous les attributs, mais par contre, il me ressort la meme erreur exactement pour la conversion, pourtant, les champs sont pas vides
j'ai tapé ça pour la conversion :
ew_planete._masse = (new Double( champ_masse.getText() )).doubleValue(); |
Marsh Posté le 28-01-2003 à 21:23:14
je crois avoir trouvé, _position et _vitesse sont des Point2D.Double
peut etre que j'ai pas le droit de mettre ".x" derriere ?
Marsh Posté le 28-01-2003 à 21:25:06
j'ai remplacé par ça et ça marche
new_planete._position = new Point2D.Double( (new Double( champ_posx.getText() )).doubleValue() , (new Double( champ_posy.getText() )).doubleValue()); |
Marsh Posté le 28-01-2003 à 21:27:48
si t'as le droit. A condition d'avoir initialisé le Double à l'avance :
new_planete._position = new Point2D.Double();
new_planete._position.x = Double.parseDouble(champ_posx.getText();
new_planete._position.y = Double.parseDouble(champ_posy.getText();
Marsh Posté le 28-01-2003 à 21:28:38
Pour les conversions t'as un peu plus simple
Code :
|
sinon tu peux utiliser les champs x et y de Point2D.Double car ils sont public. Si t'avais pas pu , la compilateur aurait gueulé
Marsh Posté le 28-01-2003 à 21:28:47
zytrahus5 a écrit : j'ai remplacé par ça et ça marche
|
ca revient au même que ce que je te disais ...
Marsh Posté le 28-01-2003 à 22:22:47
est ce que vous avez une idée de comment renvoyer un objet de type Planete à la classe qui l'a appelé ?
parce que j'ai essayé des trucs, mais ils n'entrent jamais dans les méthodes que j'ai créées.
par exemple voilà ce que j'ai fait :
(je voudrais renvoyer l'objet new_planete :
package mvt_planete; |
je crois que la méthode que j'ai créé en bas ne sert à rien...
le probleme c'est que la methode actionPerformed je peux pas la modifier et lui dire de renvoyer autre chose que void....
si vous avez une petite idée...
Marsh Posté le 28-01-2003 à 22:31:14
c'est pas clair ton truc ...
c'est qui la classe qui l'a appelée ?
Marsh Posté le 28-01-2003 à 23:09:10
benou a écrit : c'est pas clair ton truc ... |
la classe elle s'appelle saisie, c'est elle qui appelle ajout_planete
voici saisie :
package mvt_planete; |
ce sont deux classes graphiques, saisie appelle ajout_planete saisie ensuite récupère l'objet créé par ajout_planete
Marsh Posté le 29-01-2003 à 01:33:27
zytrahus5 a écrit : j'ai remplacé par ça et ça marche
|
darklord, ça te rappelle rien ce code?
Marsh Posté le 29-01-2003 à 07:25:11
Je me demandais juste comment il était possible qu'on vous donne un projet Java si vous n'avez pas eu de cours avant. Pourquoi ?
Marsh Posté le 28-01-2003 à 19:59:47
salut, je butte décidément beaucoup sur mon projet....
je n'arrive à récupérer le contenu d'un champ
vous n'auriez pas la technique pour faire ça ?
les champs sont des champs de texte
---------------
http://www.zytratech.com