Pb JTextField/Scale Graph

cs_kaliel Messages postés 96 Date d'inscription mardi 6 janvier 2004 Statut Membre Dernière intervention 24 octobre 2005 - 14 avril 2004 à 12:35
safisoft Messages postés 489 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 13 mai 2009 - 14 avril 2004 à 15:48
Slt !!!!
Je voudrais modifier l'échelle d'un graphique construit avec JPlot2D en prenant une(des) valeur(s) inscrites dans des JTextField. Le problème c'est que le graph et les JTF ne sont pas déclarés dans le même .java.
Quand je fais mon

void x1minVal_actionPerformed(ActionEvent e) {
String inputx1 = e.getActionCommand();
double x1min = Double.parseDouble(inputx1);
tableau1.changex1Scale(x1min); ////ligne 147
}

je n'est pas d'erreur de compilation à condition de déclarer
Tableau1 tableau1; en haut de programme (sinon ça marche pas non plus ???????) mais dès que je RUN et que je tape <return> apres modif d'un JTF, j'ai ce genre d'erreur :
java.lang.NullPointerException
at .....x1minVal_actionPerformed(Options_Axes.java:147)
Merci de m'aider !!!

4 réponses

kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
14 avril 2004 à 14:02
Salut,

est ce que ta variable tableau1 a été initialisée (As tu fait un new quelque part) ?
0
cs_kaliel Messages postés 96 Date d'inscription mardi 6 janvier 2004 Statut Membre Dernière intervention 24 octobre 2005 4
14 avril 2004 à 14:16
Oui, dans un autre .java j'ai
Tableau1 tableau1 = nex Tableau1;
C'est dans cette classe (Tableau 1) que je déclare et visualise correctement un tableau et une courbe
Au RUN, tout s'affiche mais les erreurs apparaissent dès que je touche au JTF x1minVal :

public class Tableau1........
.......
public Tableau1{...}
private void jbinit() {....}
public void changex1Scale (double x1min) {
x1minmax[0] = x1min;
x1minmax[1] = 8;
courbe1.setXScale(x1minmax);
repaint(); revalidate();
}

??!!??
0
kirua12 Messages postés 1155 Date d'inscription samedi 17 janvier 2004 Statut Membre Dernière intervention 29 avril 2011 7
14 avril 2004 à 14:26
Le new est à faire dans la classe ou la méthode où tu utilises ta variable. Si tu n'as qu'une instance de Tableau1, tu peux faire le new dans le constructeur (pas celui de Tableau1 mais l'autre classe) ou à la déclaration .
0
safisoft Messages postés 489 Date d'inscription vendredi 30 janvier 2004 Statut Membre Dernière intervention 13 mai 2009 6
14 avril 2004 à 15:48
si j'ai bien compris il'a le Tableau declaré dans une classe et il veut l'utiliser dans une autre, pour celà il a déclaré un Tableau1 dans la nouvelle classe et il doit l'initialiser par son premier tableau en le passant en argument à la deuxième classe (celle contenant le JTF)

Ok
0
Rejoignez-nous