IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

avec Java Discussion :

comment proceder ?


Sujet :

avec Java

  1. #1
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut comment proceder ?
    Salut à tous.

    Voici mon problème:
    J'ai une classe "ConvertTime" qui contient une méthode, "public double calculMoiCa(String valeur)", dans cette classe il y a 6 "private double taux", d'une valeur respective de 10, 100, 1000, 0.1, 0.01, 0.001 et il y a une variable "private double resultat".

    Pour le moment la méthode renvoi l'objet resultatTemps.

    Mon problème est que je souhaite obtenir le résultat de 6 calculs différents en retour, et cela dans le but de remplir par la suite 6 JLabel. Je ne maîtrise pas trop les vecteur ou les itérations, je suis ouvert à toutes les techniques tans qu'on me les expliques bien. Je ne demande à personne de faire le code, juste des conseils, et je viendrai poster si je ne m'en sort pas.

    Voici le code nécéssaire pour que vous compreniez mon problème:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    public class ConvertTime
    {
    	private double	instantT;
    	private double	resultatTemps;
    	private double	taux1	= 10;
    	private double 	taux2	= 100;
    	private double taux3 = 1000;
    	private double taux4 = 0.1;
    	private double taux5 = 0.01;
    	private double taux6 = 0.001;
     
    	public ConvertTime ()
    	{
    	}
     
    	public double calculMoiCa (String valeur)
    	{
    		try
    		{
    			// un petit test (expression régulière pour tester si la chaîne est
    			// vraiment un nombre).
    			this.instantT = Double.parseDouble (valeur);
    			this.resultatTemps = this.instantT * this.taux1;
     
    		}
    		catch (NumberFormatException aNFE)
    		{
    			JOptionPane.showMessageDialog (null, "Erreur de format: " + aNFE.getMessage (), "une erreur de saisie",
    					JOptionPane.ERROR_MESSAGE);
    		}
    		return resultatTemps;
    	}
    }
    puis ma classe ou est renvoyer la donnée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    public class GestionnaireAction implements ActionListener
    	{
    		public void actionPerformed (ActionEvent aAE)
    		{
    			if (aAE.getSource () == unPanelBouton.getBoutConver ())
    			{
    				if (unPanellabel.getChampDeSaisie ().getText ().equals (""))
    				{
    					JOptionPane.showMessageDialog (null, "Veuillez saisir une valeur à convertir", "Erreur de saisie",
    							JOptionPane.OK_OPTION);
    				}
    				else
    				{
    					convertTimeRecupere = new ConvertTime ();
    					String aConvertir = unPanellabel.getChampDeSaisie ().getText ();
    					Double resultat = convertTimeRecupere.calculMoiCa (aConvertir);
    					unPanellabel.getLabelResult1 ().setText (resultat.toString ());
    				}
    			}
    			if (aAE.getSource () == unPanelBouton.getBoutQuit ())
    			{
    				System.exit (0);
    			}
    		}
    	}
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  2. #2
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Points : 5 072
    Points
    5 072
    Par défaut
    Au choix :
    - soit tu crée une classe "Résultat" que tu instancies au début du calcul et que tu remplis au fur et a mesure puis que tu retournes et que tu traites
    - soit tu les mets dans un conteneur (ArrayList par exemple) et tu les lis et traite un à un, mais ce sera un peu plus casse-gueule je pense.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  3. #3
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    Je vais alors opter pour la solution de la classe résultat mais, je ne sais pas trop comment m'y prendre, pourrais-tu développer un peu ta solution ?

    Le problème est que dans ma classe ConvertTime, j'ai instancié la classe Résultat, mais il ne considère pas mes getter comme des variable et ne veut pas leur assigné de valeur.

    Sinon quelqu'un aurait-il une autre solution?
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  4. #4
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Citation Envoyé par Tora21 Voir le message
    Le problème est que dans ma classe ConvertTime, j'ai instancié la classe Résultat, mais il ne considère pas mes getter comme des variable et ne veut pas leur assigné de valeur.
    Je comprends pas très bien l'histoire de "assigner des valeurs aux getters".
    Un Getter comme son nom l'indique récupère la valeur de tes attributs privés. Pour "assigner" des valeurs il faut utiliser les Setters.

    Quoiqu'il en soit, par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    public class Results {
     
    	private double result1;
    	private double result2;
    	private double result3;
     
    	public void setResult1(double result1) {
    		this.result1 = result1;
    	}
    	public double getResult1() {
    		return result1;
    	}
    	public void setResult2(double result2) {
    		this.result2 = result2;
    	}
    	public double getResult2() {
    		return result2;
    	}
    	public void setResult3(double result3) {
    		this.result3 = result3;
    	}
    	public double getResult3() {
    		return result3;
    	}
    }
    Donc tu instancies ta classe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Results result = new Results();
    Après pour assigner une valeur à un résultat tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    result.setResult1(5.3);
    Et pour obtenir le résultat (que tu viens d'assigner):
    Quoiqu'il en soit, pour moi, c'est la meilleure solution; ou du moins la solution la plus propre. Si t'as d'autres résultats à faire passer à l'avenir, tu rajoutes juste un attribut et ses getters/setters et c'est bon. Pas besoin de te pré-occuper d'ou est placé ton résultat dans ton ArrayList ou autre.
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  5. #5
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    Merci je vais tester un truc dans ce genre, mais pour les getters je ne m'en sers aussi pour les remplir d'une nouvelle valeur du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    this.......getBlabla().setText(:))
    et c'est peut-être pour ca que parfois j'ai des problème, peut-être parce que je ne me sert pas des setter.

    je go tester.
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  6. #6
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Heu bah les Setters tu es obligé de les utiliser si tu veux récupérer quelque chose avec tes getter
    Tu noteras que dans la classe que je t'ai donné tu n'as aucun moyen d'assigner des valeurs à tes attributs sauf en utilisant tes Setters (vu qu'il n'y a pas de constructeur avec paramètres ici).
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  7. #7
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    Ben d'après ce que je sais le setter sert à modifier la valeur dans sa classe d'origine, alors que le getter permet d'obtenir un objet et de le modifier si voulu dans une classe ou on l'appel et non dans la classe d'origine. Me tromperai-je?
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  8. #8
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Pour le Setter c'est juste.
    Sauf que quand tu n'as pas de constructeur du genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	public construteur(String valeur1, double valeur2){
    		this.valeur1 = valeur1;
    		this.valeur2 = valeur2;
    	}
    Tu n'as aucun moyen d'assigner de valeur dans ta classe, ok?
    Donc tu utilises les setters pour le faire.

    En ce qui concerne les getter.
    Ça sert a obtenir un attribut (qui peut être de type int, Objet, etc.).
    Si c'est de type Object (donc par exemple String, Double, Integer etc...) en utilisant le Getter tu récupères aussi par transitivité les méthodes et les attributs associées à ces objets.
    En revanche si c'est un type "normal" (du genre int, double, char etc.) tu ne récupéreras uniquement sa valeur.

    le getter permet d'obtenir un objet et de le modifier si voulu dans une classe ou on l'appel et non dans la classe d'origine.
    J'arrive difficilement à saisir où tu veux en venir.
    Ta classe d'origine ça correspond à quoi?
    Sinon on appelle pas une classe, on l'instancie.
    Ca veut dire que tu crées une instance de cette classe (dans ton main par exemple) avec tous les attributs / méthodes que tu as définies.
    Quoiqu'il en soit, un Getter te permet de récupérer une valeur ou un objet c'est tout.

    Après tu peux très bien modifier ce que tu as obtenu, mais si tu veux que les modifications soient effectives, il faudra refaire un set.
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  9. #9
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    N'arrivant pas à m'en sortir dans cette petite expérience je vais poster le code actuellement écrit, pour solliciter une aide de la communauté.

    Fenêtre Principale:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
     
    public class FenetrePrincipale extends JFrame
    {
     
    	private static final long	serialVersionUID	= 1L;
     
    	private PanelLabel			unPanellabel		= new PanelLabel ();
     
    	private PanelBouton			unPanelBouton		= new PanelBouton ();
     
    	private ConvertTime			convertTimeRecupere;
     
    	public FenetrePrincipale (PanelLabel aPanelLabel, PanelBouton aPanelBouton)
    	{
    		this.unPanellabel = aPanelLabel;
    		this.unPanelBouton = aPanelBouton;
    	}
     
    	public FenetrePrincipale ()
    	{
    		setDefaultLookAndFeelDecorated (true);
    		setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE);
    		this.setTitle ("CONVERT-BOX");
     
    		this.add (this.unPanellabel, BorderLayout.NORTH);
    		this.add (this.unPanelBouton, BorderLayout.SOUTH);
     
    		this.unPanelBouton.getBoutConver ().addActionListener (new GestionnaireAction ());
    		this.unPanelBouton.getBoutConver ().setMnemonic (KeyEvent.VK_C);
    		this.unPanelBouton.getBoutQuit ().addActionListener (new GestionnaireAction ());
    		this.unPanelBouton.getBoutQuit ().setMnemonic (KeyEvent.VK_Q);
     
    		this.getRootPane ().setDefaultButton (this.unPanelBouton.getBoutConver ());
     
    		this.setLocationRelativeTo (null);
    		this.pack ();
    		this.setVisible (true);
     
    	}
    	public class GestionnaireAction implements ActionListener
    	{
    		public void actionPerformed (ActionEvent aAE)
    		{
    			if (aAE.getSource () == unPanelBouton.getBoutConver ())
    			{
    				if (unPanellabel.getChampDeSaisie ().getText ().equals (""))
    				{
    					JOptionPane.showMessageDialog (null, "Veuillez saisir une valeur à convertir", "Erreur de saisie",
    							JOptionPane.OK_OPTION);
    				}
    				else
    				{
    					convertTimeRecupere = new ConvertTime ();
    					String aConvertir = unPanellabel.getChampDeSaisie ().getText ();
    					Double resultat = convertTimeRecupere.calculMoiCa (aConvertir);
    					unPanellabel.getLabelResult1 ().setText (resultat.toString ());
    				}
    			}
    			if (aAE.getSource () == unPanelBouton.getBoutQuit ())
    			{
    				System.exit (0);
    			}
    		}
    	}
    }
    Panel bouton:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    public class PanelBouton extends JPanel
    {
    	private JButton	boutConver;
    	private JButton	boutQuit;
     
    	public PanelBouton ()
    	{
    		this.boutConver = new JButton ("Convertir");
    		this.boutQuit = new JButton ("Quitter");
     
    		this.add (this.boutConver);
    		this.add (this.boutQuit);
    	}
     
    	public JButton getBoutConver ()
    	{
    		return this.boutConver;
    	}
     
    	public JButton getBoutQuit ()
    	{
    		return this.boutQuit;
    	}
    }
    Panel label:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
     
    public class PanelLabel extends JPanel
    {
    	private JTextField	champDeSaisie;
    	private JLabel		labelResult1;
    	private JLabel		labelResult2;
    	private JLabel		labelResult3;
    	private JLabel		labelResult4;
    	private JLabel		labelResult5;
    	private JLabel		labelResult6;
     
    	public PanelLabel ()
    	{
    		this.setLayout (new GridLayout (0, 1));
     
    		this.champDeSaisie = new JTextField (25);
    		this.labelResult1 = new JLabel ("");
    		this.labelResult2 = new JLabel ("");
    		this.labelResult3 = new JLabel ("");
    		this.labelResult4 = new JLabel ("");
    		this.labelResult5 = new JLabel ("");
    		this.labelResult6 = new JLabel ("");
     
    		this.add (this.champDeSaisie);
    		this.add (this.labelResult1);
    		this.add (this.labelResult2);
    		this.add (this.labelResult3);
    		this.add (this.labelResult4);
    		this.add (this.labelResult5);
    		this.add (this.labelResult6);
     
    		Tools.faitBordureEtTexte (this.champDeSaisie, "Nombre à convertir", Color.green);
    		Tools.faitBordureEtTexte (this.labelResult1, "Résultat de la conversion 1", Color.blue);
    		Tools.faitBordureEtTexte (this.labelResult2, "Résultat de la conversion 2", Color.blue);
    		Tools.faitBordureEtTexte (this.labelResult3, "Résultat de la conversion 3", Color.blue);
    		Tools.faitBordureEtTexte (this.labelResult4, "Résultat de la conversion 4", Color.blue);
    		Tools.faitBordureEtTexte (this.labelResult5, "Résultat de la conversion 5", Color.blue);
    		Tools.faitBordureEtTexte (this.labelResult6, "Résultat de la conversion 6", Color.blue);
    	}
     
    	public JLabel getLabelResult1 ()
    	{
    		return this.labelResult1;
    	}
     
    	public JLabel getLabelResult2 ()
    	{
    		return this.labelResult2;
    	}
     
    	public JLabel getLabelResult3 ()
    	{
    		return this.labelResult3;
    	}
     
    	public JLabel getLabelResult4 ()
    	{
    		return this.labelResult4;
    	}
     
    	public JLabel getLabelResult5 ()
    	{
    		return this.labelResult5;
    	}
     
    	public JLabel getLabelResult6 ()
    	{
    		return this.labelResult6;
    	}
     
    	public JTextField getChampDeSaisie ()
    	{
    		return this.champDeSaisie;
    	}
    }
    Convert time:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    public class ConvertTime
    {
    	private double	instantT;
    	private double	resultatTmp;
    	private double	taux1	= 10;
    	private double	taux2	= 100;
    	private double	taux3	= 1000;
    	private double	taux4	= 0.1;
    	private double	taux5	= 0.01;
    	private double	taux6	= 0.001;
     
    	public ConvertTime ()
    	{
    	}
     
    	public double calculMoiCa (String valeur)
    	{
    		try
    		{
    			// un petit test (expression régulière pour tester si la chaîne est
    			// vraiment un nombre).
    			Resultat resultat = new Resultat ();
    			this.instantT = Double.parseDouble (valeur);
    			resultat.setResultat1 (this.instantT * this.taux1);
    			resultat.setResultat2 (this.instantT * this.taux2);
    			resultat.setReusltat3 (this.instantT * this.taux3);
    			resultat.setReusltat4 (this.instantT * this.taux4);
    			resultat.setReusltat5 (this.instantT * this.taux5);
    			resultat.setResultat6 (this.instantT * this.taux6);
     
    		}
    		catch (NumberFormatException aNFE)
    		{
    			JOptionPane.showMessageDialog (null, "Erreur de format: " + aNFE.getMessage (), "une erreur de saisie",
    					JOptionPane.ERROR_MESSAGE);
    		}
    		return resultatTmp;
    	}
    }
    Résultat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    public class Resultat
    {
    	private double resultat1 = 0;
    	private double resultat2 = 0;
    	private double reusltat3 = 0;
    	private double reusltat4 = 0;
    	private double reusltat5 = 0;
    	private double resultat6 = 0;	
     
    	public Resultat()
    	{
    	}
     
    	public double getResultat1 ()
    	{
    		return resultat1;
    	}
     
    	public void setResultat1 (double resultat1)
    	{
    		this.resultat1 = resultat1;
    	}
     
    	public void setResultat2 (double resultat2)
    	{
    		this.resultat2 = resultat2;
    	}
     
    	public void setReusltat3 (double reusltat3)
    	{
    		this.reusltat3 = reusltat3;
    	}
     
    	public void setReusltat4 (double reusltat4)
    	{
    		this.reusltat4 = reusltat4;
    	}
     
    	public void setReusltat5 (double reusltat5)
    	{
    		this.reusltat5 = reusltat5;
    	}
     
    	public void setResultat6 (double resultat6)
    	{
    		this.resultat6 = resultat6;
    	}
     
    	public double getResultat2 ()
    	{
    		return resultat2;
    	}
     
    	public double getReusltat3 ()
    	{
    		return reusltat3;
    	}
     
    	public double getReusltat4 ()
    	{
    		return reusltat4;
    	}
     
    	public double getReusltat5 ()
    	{
    		return reusltat5;
    	}
     
    	public double getResultat6 ()
    	{
    		return resultat6;
    	}
    }
    Le souci actuellement rencontré, est que les champs activé (tous le code n'est pas mit pour le moment) ne reçoivent ou n'envoient pas les données.

    Pour ce code je souhaitais savoir aussi qu'est-ce que vous pensiez de la séparations des éléments en plusieurs classes différentes.
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  10. #10
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Salut (re),

    D'un côté c'est normal que ça ne te renvoie rien.
    Les deux choses qui nous intéressent ici sont:

    Fenêtre Principale:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     // Dans GestionnaireAction
    Double resultat = convertTimeRecupere.calculMoiCa (aConvertir);
    unPanellabel.getLabelResult1 ().setText (resultat.toString ());
    ConvertTime
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    public double calculMoiCa (String valeur)
    	{
    		try
    		{
    			// un petit test (expression régulière pour tester si la chaîne est
    			// vraiment un nombre).
    			Resultat resultat = new Resultat ();
    			this.instantT = Double.parseDouble (valeur);
    			resultat.setResultat1 (this.instantT * this.taux1);
    			resultat.setResultat2 (this.instantT * this.taux2);
    			resultat.setReusltat3 (this.instantT * this.taux3);
    			resultat.setReusltat4 (this.instantT * this.taux4);
    			resultat.setReusltat5 (this.instantT * this.taux5);
    			resultat.setResultat6 (this.instantT * this.taux6);
     
    		}
    		catch (NumberFormatException aNFE)
    		{
    			JOptionPane.showMessageDialog (null, "Erreur de format: " + aNFE.getMessage (), "une erreur de saisie",
    					JOptionPane.ERROR_MESSAGE);
    		}
    		return resultatTmp;
    	}
    Le fait est que dans ConvertTime tu retournes "resultTmp" (auquel tu n’assignes aucune valeur résultante d'opérations ou autre)... Donc quand tu récupères ton "résultat" dans ta fenêtre principal il vaudra 0 normalement (ce qui est normal).
    Donc là, vu que tu as fait un classe résultat il faut que la retournes à ta classe CalculMoiCa:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    public Resultat calculMoiCa (String valeur)
    	{
    		try
    		{
    			// un petit test (expression régulière pour tester si la chaîne est
    			// vraiment un nombre).
    			Resultat resultat = new Resultat ();
    			this.instantT = Double.parseDouble (valeur);
    			resultat.setResultat1 (this.instantT * this.taux1);
    			resultat.setResultat2 (this.instantT * this.taux2);
    			resultat.setReusltat3 (this.instantT * this.taux3);
    			resultat.setReusltat4 (this.instantT * this.taux4);
    			resultat.setReusltat5 (this.instantT * this.taux5);
    			resultat.setResultat6 (this.instantT * this.taux6);
     
    		}
    		catch (NumberFormatException aNFE)
    		{
    			JOptionPane.showMessageDialog (null, "Erreur de format: " + aNFE.getMessage (), "une erreur de saisie",
    					JOptionPane.ERROR_MESSAGE);
    		}
    		return resultat;
    	}
    Comme ça dans ta fenêtre principale tu obtiendras ta classe résultat:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     // Dans GestionnaireAction
    Resultat resultat = convertTimeRecupere.calculMoiCa (aConvertir);
    unPanellabel.getLabelResult1 ().setText(String.valueOf(resultat.getResultat1()));
    Et là tu pourras récupérer les valeurs que tu as assignées à ta classe Resultat.
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  11. #11
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    Nickel ça passe, merci, je vais pouvoir continuer un peu. Et qu'est-ce que tu pense toi du fait de séparer tous les éléments en classe différentes?
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  12. #12
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Qu'est ce que tu appelles "éléments" ?
    Personnellement j'aurais fait (pour le moment) une classe de plus concernant tes taux, éventuellement.
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  13. #13
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    par élément j'entends les panels (séparés les uns des autres), la Fenêtre, le gestionnaire (bien qu'ils soient ensemble dans mon cas), les boutons d'un type, les boutons d'autres types. Tous ce qui compose l'interface graphique, séparé par genre, et tous ce qui compose les traitements du programme comme tu me le dit pour les taux par exemple.

    Et pourquoi ferais-tu une classe séparé pour les taux?
    Dans mon projet je n'aurais pas de taux à rajouter, par contre ces mêmes taux servirons pour des calcul de différents type. Et vu que je ne compte pas modifier les taux, je ne les ais pas séparé, mais peut-être le devrais-je ?!
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

  14. #14
    Membre averti Avatar de ZnhaarX
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2011
    Messages
    146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2011
    Messages : 146
    Points : 307
    Points
    307
    Par défaut
    Citation Envoyé par Tora21 Voir le message
    par élément j'entends les panels (séparés les uns des autres), la Fenêtre, le gestionnaire (bien qu'ils soient ensemble dans mon cas), les boutons d'un type, les boutons d'autres types. Tous ce qui compose l'interface graphique, séparé par genre, et tous ce qui compose les traitements du programme comme tu me le dit pour les taux par exemple.
    Dans un sens général tu peux ré-organiser ton application comme tu le désires. Mais il ne faut pas non plus que tu fasses 36 classes pour l'IHM. Donc faire une classe pour les boutons d'un type, une autre pour les autres etc. est une mauvaise idée (à mon sens). Tu peux, à la rigueur, faire un classe globale pour ton IHM avec des méthodes d'initialisation de ses différents composants (InitButtons, InitPannel, InitFrame etc.). Ça permettra d'organiser un peu le tout et de pas avoir tout mélanger.

    Citation Envoyé par Tora21 Voir le message
    Et pourquoi ferais-tu une classe séparé pour les taux?
    Dans mon projet je n'aurais pas de taux à rajouter, par contre ces mêmes taux servirons pour des calcul de différents type. Et vu que je ne compte pas modifier les taux, je ne les ais pas séparé, mais peut-être le devrais-je ?!
    C'est dans l'éventualité d'une évolution de ton application (demande à l'utilisateur de saisir ses taux et de faire de calculs en fonction de ça etc.). Après, moi je les aurais séparé parce que j'aime bien prévoir l'éventualité, quand je fais une application, qu'elle devienne paramétrable.
    Mais encore une fois, ça reste à ton appréciation
    « War is peace. Freedom is slavery. Ignorance is strength. » - George Orwell

  15. #15
    Membre régulier Avatar de Tora21
    Homme Profil pro
    Développeur("Java"); //Débutant
    Inscrit en
    Mai 2011
    Messages
    140
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur("Java"); //Débutant

    Informations forums :
    Inscription : Mai 2011
    Messages : 140
    Points : 116
    Points
    116
    Par défaut
    Merci pour les conseils, en ce qui concerne les taux ce que je vais faire c'est crée autant de panel que j'ai de type de conversion (pour le moment 4), auxquels j'affecterais un JRadioButton, ce qui permettra de jongler entre les affichages pour les conversions, et je pense (parce que tu m'a souffler l'idée) rajouter un panel paramétrable, avec un nombre de champs qui augmente selon les choix, et une modification des taux selon les choix.

    Mais ça va me prendre un peu plus de temps.
    C'est "la java" quoi
    Ah ça y’est, j’viens de comprendre à quoi ça sert la canne. En fait ça sert à rien… Du coup ça nous renvoie à notre propre utilité : l’Homme face à l’Absurde !

    -Perceval-

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment Proceder Pour Qu'une Gpo Installe Automatiquement Un Logiciel
    Par gaara69620 dans le forum Windows Serveur
    Réponses: 4
    Dernier message: 10/01/2008, 08h18
  2. Réponses: 4
    Dernier message: 22/05/2006, 14h01
  3. [Deploiement 1.xxx vers 2.0] Comment proceder ?
    Par Seb.26 dans le forum Framework .NET
    Réponses: 5
    Dernier message: 24/04/2006, 12h13
  4. [Erreur] SQL1040N: comment proceder ?
    Par FzF dans le forum DB2
    Réponses: 3
    Dernier message: 12/04/2006, 09h39
  5. [Optimisation]Comment proceder pour une BDD très importante?
    Par XTopheBde dans le forum Décisions SGBD
    Réponses: 8
    Dernier message: 04/01/2006, 13h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo