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 :

Dessiner un réseau de noeuds avec patron observeur


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Par défaut Dessiner un réseau de noeuds avec patron observeur
    Bonjour,

    pour mon TFE je fais la reingenierie d'une application existante en applicant des patrons de conception au mieux.

    Je dessine une reseau de noeuds sur un panneau et chaque fois que je cree un noeud, la vue correspondante est aussi creee. Je dispose deux d classes Node et NodeView et je decide de separer les variables comme decrit au listing

    Q1) Pensez-vous que mon choix de separer les variables comme tel est judicieux?

    Q2) Dans le constructeur de Nodeview, j'aimerais dessiner la vue du noeud immediatement sur le graphique de son JPanel mais chaquefois que je fais this.getGraphics () il me retourne un null. Auriez-vous une solution a ca?


    ---Listing------

    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
     
    public class Node {
     
    	private int id;
    	private int toSink;
    	private Link linktoSink;
    	private int lastBroadId = 0;
    	private int battery ;
     
     
    	public Node (int id){
     
    		this.id = id;
     
    	}
     
           ........
     
    }
    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
     
    public class NodeView extends JPanel{
     
    	private int id;
    	private int abscisse;
    	private int ordonnee;
     
     
     
     
    	public NodeView ( Node node) {
     
    		abscisse = node.getX();
    		ordonnee = node.getY();
     
    	}
     
           ........
    }

  2. #2
    Membre éclairé
    Homme Profil pro
    Développeur java, .Net
    Inscrit en
    Janvier 2011
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Indre et Loire (Centre)

    Informations professionnelles :
    Activité : Développeur java, .Net

    Informations forums :
    Inscription : Janvier 2011
    Messages : 55
    Par défaut
    Quel est ton code pour la méthode suivante de ton JPanel? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @Override
    	public void paintComponent(Graphics g) {
    }

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2011
    Messages : 6
    Par défaut Re:
    Citation Envoyé par gandalf72000 Voir le message
    Quel est ton code pour la méthode suivante de ton JPanel? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    @Override
    	public void paintComponent(Graphics g) {
    }

    Je ne l'implemente pas car j'ai normalement besoin de passer les coordonees du dessin en parametres; ce qui n'est pas possible avec paintComponent (Graphics g)

  4. #4
    Modérateur
    Avatar de wax78
    Homme Profil pro
    R&D - Palefrenier programmeur
    Inscrit en
    Août 2006
    Messages
    4 098
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : R&D - Palefrenier programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 4 098
    Par défaut
    Bah alors comment dessines tu ton dessin ?

    Il faut au moins implémenter un paint() quelques part sans quoi je doute que tu vois quelques chose apparaitre un jour.

    Quoiqu'il en soit, pour avoir graphics, il te faut soit créer une image, soit utilser celui fournit au moment du paint.

    Il faudrait peut etre aussi montré les choses qui vont utiliser ce nodeview.
    (Les "ça ne marche pas", même écrits sans faute(s), vous porteront discrédit ad vitam æternam et malheur pendant 7 ans)

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

Discussions similaires

  1. [DOM] Récupération d'un noeud avec critères ?
    Par elitost dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 20/10/2005, 15h27
  2. xsl ---> filtrage des noeuds avec "not"
    Par yos dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 12/07/2005, 11h26
  3. [DOM] Accès au contenu textuel d'un noeud avec DOM
    Par comexe2 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 16/07/2004, 15h41
  4. Réseau en détresse avec un serveur ftp
    Par cifren dans le forum Développement
    Réponses: 8
    Dernier message: 15/12/2003, 00h56
  5. créer un noeuds avec des paramétres
    Par Toxine77 dans le forum XMLRAD
    Réponses: 5
    Dernier message: 21/01/2003, 16h11

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