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

2D Java Discussion :

Dessinner une ligne avec propriété d'un composant


Sujet :

2D Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut Dessinner une ligne avec propriété d'un composant
    Bonjour, voilà j'ai un panel, auquel je viens ajouter des composants de ma composition. jusque là tout vas bien.

    J'autorise le user à si le choisit ouvrir une boite à outils qui lui permet d'ajouter des composants : - maComposition (forme d'un rectangle)
    - text
    - image
    - ligne
    - rectangle
    - ellipse.

    Mon composant maComposition est fait de telle sorte que lorsqu'on le sélectionne des petits carrées se dessinent dans les coins, et on peut le déplacer, re-size...
    Rq : en fait mon composant hérite d'un JPanel, et c'est ce JPanel qui définit tout ceci (resize, déplacement... )

    Je voudrais faire pareil avec une ligne et les autres (rectangle ellipse...), mais je ne sais pas trop comment me débrouiller car j'aimerais bien créer un objet SpecialForm qui possederait un rectangle et un type, par exemple une ligne serait la diagonale du rectangle, l'ellipse devrait rentré dans ce rect....

    Mais le truc c'est que je veux que si je dessine une ligne est puisse être superposé à mon composant.... alors comment dire à mon panel d'être transparent mais de dessiner une ligne ?

    Si quelqu'un à une idée propre qui pourrait simplifier les choses qu'il se fasse connaitre...

    Merci d'avance.

  2. #2
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 15
    Par défaut
    Donc si j'ai bien compris sur un panel tu fait un drawRect... et il est resizable ...
    tu cherche la superposition de panel pour les drawLine ou drawOval etc ....

    ...

    Enfin si j'ai tout compris ...

    Euh ... essai de travailler sur un seul canvas (ou panel), ca doit etre faisable meme sans mais je suis sur que c'est faisable de definir une grosse methode repaint() ....

    Enfin bon je sais pas trop la ...

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    en fait moi j'ai un composant A de la forme d'un rectangle qui est un JPanel lui meme et qui contient plein de label, bouton....
    Ce composant A hérite d'un autre PAcComponent qui lui permet le resize, deplacement.
    et PacComponent hérite de JPanel.

    Donc je peux insérer A sans pb, maintenant je veux pouvoir dessiner dessus et pouvoir sélectionner ce que j'ai dessiner et le déplacer sur ou a coté de mon composant A.....
    Est ce possible simplement ?

  4. #4
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 15
    Par défaut
    Simplement ???

    C'est du java, la simplicité connais pas ...

    Ben désolé je vois pas trop comment faire ...

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    en fait moi g une solution, mais je ne sait pas trop ce quelle va données.

    En fait je crée une nouvelle classe SpecialForm qui est cousine de ma classe PacCOmponent, elle a les même mouseListener, mouseMotionListener... mais elle sont paint fait juste drawLine ou drawRectangle...

    mais ca m'ennuie car je fais d copier coller de mon pac component quasiement... j'ai l'impression qu'un autre solution existait...

  6. #6
    Membre averti
    Inscrit en
    Décembre 2004
    Messages
    15
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 15
    Par défaut
    Essay de regrouper les deux !

    tu te fait un gros automate dans le paint()

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    504
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 504
    Par défaut
    Une question que j'aurais peut etre du poser en premier : est ce q'est possible de dire au panel d'être transparent et de juste dessiner qqchose après ? pour autoriser la supersossition,et que le dernier composant ajouté soit en 1er plan ?

Discussions similaires

  1. sauter une ligne avec Layout...
    Par youp_db dans le forum Agents de placement/Fenêtres
    Réponses: 3
    Dernier message: 16/12/2005, 19h54
  2. [DEBUTANT]comparaison une ligne avec un STRing
    Par Battosaiii dans le forum Langage
    Réponses: 2
    Dernier message: 05/05/2005, 20h15
  3. Extraire une valeur d'une ligne avec sed
    Par jojolepabo dans le forum Linux
    Réponses: 6
    Dernier message: 27/10/2004, 09h34
  4. [FP]Tracer Une ligne avec Dev-pascal
    Par yffick dans le forum Turbo Pascal
    Réponses: 9
    Dernier message: 17/12/2003, 16h33
  5. supprimer une ligne avec cle etrangere
    Par BaBas dans le forum Langage SQL
    Réponses: 4
    Dernier message: 15/07/2003, 11h24

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