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

C# Discussion :

Problème de class et d'interface


Sujet :

C#

  1. #1
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Décembre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Décembre 2007
    Messages : 40
    Par défaut Problème de class et d'interface
    Bonjour à tous,
    voilà j'ai une petite application composée d'au moins deux feuilles.
    La première feuille doit commander une action sur la deuxième, et elle, elle doit renvoyer le résultat à la première.

    J'ai donc créé deux interfaces qui sont implémentées par mes deux feuilles.

    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
     
    - Fichier 1 :
     
    public interface IForm1
    {
        void Action1();
    }
     
    public class Form1 : Form, IForm1
    {
        public void Action1()
        {
            IForm2 iF = new Form2();
    	iF.Action2();
        }
    		 ...
    }
     
    - Fichier 2 :
     
    public interface IForm2
    {
        void Action2();
    }
     
    public class Form1 : Form, IForm2
    {
        public void Action2()
        {
            ...
    	...
    	...
    	IForm1 iF1 = new IForm1();
    	iF1.setMaJCompo1();
     
    	textBox1 = "Toto";
        }
    	...
    }
    Voilà en gros le programme.
    La question est, est-ce une bonne méthode ?

    J'ai actuellement un problème, car par exemple les textBox de la seconde feuille ne sont pas mis à jour (la méthode est bien de la classe Form2 mais elle est appelée par la classe Form1).

    En mode debug, elles sont bien modifiées (on passe bien par tout le code...).

    Pour tester, j'ai mis un bouton sur la seconde feuille qui modifie les textBox de cette même feuille et là elles sont mises à jour...

    Quelqu'un peut-il m'expliquer, comme bien faire et où est mon erreur, s'il vous plait ?

    Merci par avance.

    Raphaël

  2. #2
    Membre éclairé
    Inscrit en
    Avril 2006
    Messages
    346
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 346
    Par défaut
    Bonjour,

    personnellement je ne vois pas d'intérêt à utiliser une interface dans ce cas-là.

    Voici un lien présent dans la faq qui pourra t'aider:
    http://faqcsharp.developpez.com/?page=form#form_meth

    ++

  3. #3
    Membre averti
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Décembre 2007
    Messages
    40
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Décembre 2007
    Messages : 40
    Par défaut Merci zoaax
    c'est bien ce que je cherchais comme réponse, tout du moins pour une de mes questions.

    Parce que comme je le disais je lançais bien la méthode qui calculais, mais il n'y avait pas de modification qui se passait...

    Donc en faisant la modification que tu m'as proposé, j'ai pu avoir les modifications que j'attendais.

    Mais contre je ne voyais pas comment modifier le contenu des composants de la feuille appelante.

    En recherchant dans mes anciens messages, j'ai retrouvé celui où on m'avais conseillé d'utiliser une interface, mais c'était en Java...
    En fait je m'étais un peu trompé.

    Voici un extrait de ce que l'on m'avait dit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    public class Feuille 2
    {
      private IFeuille1 feuille1;
      public Feuille2(IFeuille1 feuille1)
      {
        this.feuille1 = feuille1;
      }
     
      void maMethodeQuiVeutModifierLecomposant()
      {
          feuille1.methodePublicQuiModifie();
      }
    ...
    Et ta classe appelante doit donner une interface à ton thread lors de sa construction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public class Feuille1 extends JFrame implements IFeuille1
    {
      Feuille2 feuille2 = new Feuille2( this );
        ....
    }
    Néanmoins, ça fonctionne mais peut être que c'est adapté que pour Java. Si vous avez mieux pour C#, je suis preneur...

    Voilà.

    Merci encore.

    Raphaël

Discussions similaires

  1. Problème de classe et interface
    Par NOEL POLA HABA dans le forum Débuter avec Java
    Réponses: 3
    Dernier message: 12/03/2015, 08h17
  2. problème avec classe interface
    Par bandit_debutant dans le forum Langage
    Réponses: 6
    Dernier message: 05/11/2006, 20h54
  3. Problème de classe
    Par DeusXL dans le forum DirectX
    Réponses: 15
    Dernier message: 04/12/2005, 14h37
  4. Diagramme des classes pour l'interface visuel
    Par robv dans le forum Diagrammes de Classes
    Réponses: 2
    Dernier message: 25/06/2004, 10h50
  5. Réponses: 2
    Dernier message: 29/03/2004, 18h29

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