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

AWT/Swing Java Discussion :

[package][swing] Interface graphique


Sujet :

AWT/Swing Java

  1. #1
    Membre régulier Avatar de _KB_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Points : 92
    Points
    92
    Par défaut [package][swing] Interface graphique
    Bonjour,

    je crée actuellement une interface graphique et j'ai créé plusieurs packages: registers, files, utils et enfin graphics.

    Mon problème est le suivant: les packages registers, files, utils contiennent des classes et des méthodes indépendantes de mon interface graphique. En revanche mon package graphics contient pour le moment deux fichiers .java.

    Le 1er est une classe permettant de placer les composant (layout perso) , la 2eme est en réalité le constructeur de mon interface avec tous les composants, méthodes et classes internes (événements, actions etc ...)

    Mon problème est que mon fichier n'est plus trop lisible du coup et je souhaiterais dans mon package graphics creer d'autres .java ou je placerais les classes internes par exemple.

    Y a t'il un moyen de partager les variables au sein d'un package ? Par exemple une méthode x doit connaitre la variable toto qui est dans un autre fichier. Ca m'éviterai d'avoir énormément de paramétres en arguments de mes méthodes qui agissent suivant les états de certains composants ...

    C'était un peu long et confus désolé

    Si comme je le pense ce n'est pas possible, quels sont vos trucs pour une interface propre sans avoir un code à rallonge et des variables en pagailles au sein d'un même fichier java...

    merci bcp'
    Comme le disait Heisenberg « Chérie, j’ai garé la voiture, mais je sais plus où »

  2. #2
    Membre chevronné
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Points : 1 958
    Points
    1 958
    Par défaut
    Je comprends pas trop. C'est un problème d'accessibilité que tu as ? Car si tu compiles en renseignant correctement le classpath et que tu fais les bons imports, tu as acces aux classes contenues dans les packages extérieurs...

  3. #3
    Membre régulier Avatar de _KB_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Points : 92
    Points
    92
    Par défaut
    effectivement c'est un pb d'accessiblilité je souhaite accéder à la variable de ma classe principale Interface() qui contient un certains nombre de variable.

    par exemple ma classe Interface est dans le package graphics. Ma classe MenuVolant itou. Le constructeur de ma classe Interface crée une instance MenuVolant. Les méthodes de ma classe MenuVolant ont besoin de variables de ma classe Interface pour effectuer des traitements.

    J'ai mis les variales en public mais elles ne sont pas reconnues.

    edit: le but étant que ces variables (nombreuses) soient connues dans MenuVolant sans les passer en paramètres de mes méthodes...

    edit2
    J'ai trouvé une solution peu élégante, je place ma classe Interface en paramètre de toutes les méthodes de ma classe MenuVolant. Si qqn voit mieux ...
    Comme le disait Heisenberg « Chérie, j’ai garé la voiture, mais je sais plus où »

  4. #4
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Il vaut mieux utiliser des accesseurs (getters ) au lieu des variables public .


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  5. #5
    Membre régulier Avatar de _KB_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Points : 92
    Points
    92
    Par défaut
    où puis je trouver un ex d'utilisation?
    merci
    Comme le disait Heisenberg « Chérie, j’ai garé la voiture, mais je sais plus où »

  6. #6
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    supposons que tu as une variable d'instance X dans ta classe Interface
    tu dois juste creer une méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    public TypeDeX getX(){
        return X;
    }


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  7. #7
    Membre régulier Avatar de _KB_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Points : 92
    Points
    92
    Par défaut
    Ca rajoute autant de méthodes que j'ai de variables qui sont déjà nombreuses. Quel intérêt ai-je à faire ça ?
    Comme le disait Heisenberg « Chérie, j’ai garé la voiture, mais je sais plus où »

  8. #8
    Membre chevronné
    Avatar de afrikha
    Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    1 600
    Détails du profil
    Informations personnelles :
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2005
    Messages : 1 600
    Points : 2 208
    Points
    2 208
    Par défaut
    Citation Envoyé par _KB_
    Quel intérêt ai-je à faire ça ?
    cours de J.MDoudoux


    Mes publications
    Lisez
    Les régles du forum
    Pensez au bouton

  9. #9
    Membre chevronné
    Avatar de Deadpool
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 312
    Points : 2 011
    Points
    2 011
    Par défaut
    Bah en faisant ça, tu fais ce qu'on appelle de l'encapsulation, un des principes fondamentales de la programmation objet.

    L'intéret des getter est de pouvoir contrôler les action faites sur une donnée et de réagir en conséquence. Par exemple si la valeur à renvoyer dépends de plusieurs variables, d'effectuer le calcul en coulisse.
    Si tu veux, c'est pour mettre un niveau d'abstraction, l'utilisateur final du getter ne sais pas comment les données auxquelles il accède sont définis et n'a pas à le savoir. Cela te permet de changer la réprésentation de tes données sans que l'utilisateur final en soit affecté, lui utilise toujours le getter.
    Alors qu'en exposant les variables directement en les mettant public, je t'explique pas les problèmes pour l'utilisateur de tes variables si tu venais à les changer.

    [edit]grilled[/edit]

    -"Tout ça me paraît très mal organisé. Je veux déposer une réclamation. Je paye mes impôts, après tout!"
    -"JE SUIS LA MORT, PAS LES IMPÔTS! MOI, JE N'ARRIVE QU'UNE FOIS".

    Pieds d'argile (1996), Terry Pratchett 1948 - 2015
    (trad. Patrick Couton)

  10. #10
    Membre régulier Avatar de _KB_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2006
    Messages
    110
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2006
    Messages : 110
    Points : 92
    Points
    92
    Par défaut
    ok merci à vous 2 je vais me plonger dans dans des bouquins java parceque pour le moment c'est pas encore très clair pour moi ...

    Je reviendrais quand j'en saurais + pour vous poser qq petites questions 8)
    merci bcp en tout cas
    Comme le disait Heisenberg « Chérie, j’ai garé la voiture, mais je sais plus où »

Discussions similaires

  1. SWING Interface graphique les clics avec la souris
    Par aubernard dans le forum AWT/Swing
    Réponses: 0
    Dernier message: 10/04/2014, 14h16
  2. Package et interface graphique
    Par maryo dans le forum R
    Réponses: 1
    Dernier message: 25/03/2008, 10h07
  3. [DEBUTANT][GROS NEWBIE][SWING] Interface graphique
    Par GyZmoO dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 21/05/2006, 00h13
  4. [Swing] Bug interface graphique
    Par thegreatbato dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 15/05/2006, 11h51
  5. [Swing] Création d'une interface graphique SWING + MVC
    Par Sylmandel dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 21/04/2006, 09h03

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