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

Interfaces Graphiques en Java Discussion :

Dessiner une ligne


Sujet :

Interfaces Graphiques en Java

  1. #1
    Débutant
    Inscrit en
    Mars 2006
    Messages
    43
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 43
    Points : 30
    Points
    30
    Par défaut Dessiner une ligne
    Salut,
    j'ai une interface qui contient des boutons qui présentent les équipements de mon projet et j'ai une liste déroulante qui contient plusieus types de liens. Je voudrais savoir comment faire lorsque je choisis deux boutons et un choix de la liste déroulante alors un lien coloré reliant les 2 boutons choisis s'affiche.
    Merci bcp d'avance.

  2. #2
    Membre à l'essai
    Inscrit en
    Mars 2006
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 27
    Points : 14
    Points
    14
    Par défaut
    Je pense que tu peux utiliser des classes qui redéfinissent la methode draw(java.awt.Graphics g).Cela permet de dessiner à l'intérieur d'un JPanel par exemple.

    je te donne une classe line que j'ai déja faite:
    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
     
    public class Line {
     
        private int x1;
        private int y1;
        private int x2;
        private int y2;
     
        public Line(int x1,int y1,int x2,int y2) {
            this.x1 =x1;
            this.y1 =y1;
            this.x2 =x2;
            this.y2 =y2;
        }
     
        public void draw(Graphics g) {
            g.drawLine(this.x1,this.y1,this.x2,this.y2);
            g.setColor(Color.BLACK);
        }
     
    }

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    SI tu est a cheval sur l'hestetique de ta ligne ,en utilisant le code de Dnasty,
    remplace paint par :

    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
     
     
    public void draw(Graphics g) {
     
            Graphics2D g2 = (Graphics2D) g;
            g2.setRenderingHint(
                java.awt.RenderingHints.KEY_ANTIALIASING, 
                java.awt.RenderingHints.VALUE_ANTIALIAS_ON);
     
            g2.drawLine(this.x1,this.y1,this.x2,this.y2);
            g2.setColor(Color.BLACK);
     
            g2.setRenderingHint(
                java.awt.RenderingHints.KEY_ANTIALIASING, 
                java.awt.RenderingHints.VALUE_ANTIALIAS_OFF); 
    }
    Ta ligne sera antialiasée, ca rend mieu ( mais si tu as beaucoup de lignes a tracé, ca se sentira niveau temps de tracage. )

    Dnasty, pourquoi fait tu setColor() apres le tracage ?

    bon courage.

  4. #4
    Membre émérite
    Avatar de xavlours
    Inscrit en
    Février 2004
    Messages
    1 832
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 1 832
    Points : 2 410
    Points
    2 410
    Par défaut
    Heu, depuis quand la méthode draw ? C'est nouveau ? C'est pas de la méthode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    public void paint(Graphics g)
    dont vous voulez parler ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 80
    Points : 62
    Points
    62
    Par défaut
    Paint, c les composant Awt et Swing .... la la classe Line de Dnasty n'herite pas de composant Awt ou Swing, donc on a aucune obligation sur le nom de methode.... on aurai put l'appeler TraceLigne() ou n'importe quoi d'autre.

    Ce de cette maniere dans la methode paint() d'un JPanel (par exemple), on pourrait faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    public void paint(Graphics g) {
     
    super.paint(g);
     
    MaLigne = new Line(2,2,10,10);
    MaLigne.draw(g);
     
    }
    ca marchera tres bien.

Discussions similaires

  1. Dessiner une ligne de DBGrid suivant critères
    Par nbutin dans le forum C++Builder
    Réponses: 3
    Dernier message: 15/06/2006, 18h43
  2. Comment dessiner une ligne dans un Chart ?
    Par libititi dans le forum Composants VCL
    Réponses: 3
    Dernier message: 16/06/2005, 15h56
  3. [Image]Dessiner une ligne en dynamique
    Par Bugmaster dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 02/08/2004, 12h56
  4. Dessiner une ligne
    Par Bugmaster dans le forum 2D
    Réponses: 6
    Dernier message: 29/07/2004, 09h36
  5. Dessiner une ligne dans un cube transparent ?
    Par Muetdhiver dans le forum OpenGL
    Réponses: 4
    Dernier message: 04/05/2004, 12h06

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