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 :

Elément Swing, drag&drop et dessin


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 96
    Points : 32
    Points
    32
    Par défaut Elément Swing, drag&drop et dessin
    Bonjour,

    Existe-t-il un élément Swing qui permette :

    - à la fois le dessin, si possible en vectoriel,
    - et le drag&drop, d’éléments avec interaction entre eux

    Un exemple pour illustrée mon idée :

    Un cadre contient 4 éléments : un disque et 3 carrés de couleur différente.
    Mon but est de pouvoir, à la souris, ‘attraper’ le disque et en le ‘relâchant’ sur un des carré lui faire prendre la couleur de ce carré. Puis de pouvoir dessiner avec.

    D’avance merci.

  2. #2
    Modérateur

    Homme Profil pro
    Développeur java, access, sql server
    Inscrit en
    Octobre 2005
    Messages
    2 705
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur java, access, sql server
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 705
    Points : 4 783
    Points
    4 783
    Par défaut
    Citation Envoyé par Torx26 Voir le message
    Bonjour,

    Existe-t-il un élément Swing qui permette :

    - à la fois le dessin, si possible en vectoriel,
    - et le drag&drop, d’éléments avec interaction entre eux
    Pas dans la Librairie de base. Il faut programmer.
    voir pour débuter : https://docs.oracle.com/javase/tutor...arbitrary.html

    Après, il y a un certains nombre de librairies qui ont été créées pour cela avec des résultats assez variés.
    http://geosoft.no/graphics/
    http://horstmann.com/sjsu/graphics/
    https://www.yworks.com/en/products_yfiles_about.html

    je ne les ais pas testées.

    Pour faire un logiciel de planning avec des formes et des drag&drop, je n'ai rien trouvé de satisfaisant.
    Résultat : 30 jours de programmation.
    Labor improbus omnia vincit un travail acharné vient à bout de tout - Ambroise Paré (1510-1590)

    Consulter sans modération la FAQ ainsi que les bons ouvrages : http://jmdoudoux.developpez.com/cours/developpons/java/

  3. #3
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Salut,

    Pas de bibliothèque standard à ma connaissance, mais la bibliothèque Piccolo2D fournit le support et des exemples pour faire ça très très vite.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2011
    Messages
    96
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 96
    Points : 32
    Points
    32
    Par défaut
    Bonjour,

    Merci pour votre attention. Pour éclairer un peu plus sur mes attentes, je voudrais pouvoir faire le scénario suivant:

    dans un "espace" j'ai:

    - 3 icônes en haut, représentant une vache, un coq, un chien.
    - 3 icônes en bas représentant une note, chacune émettant le bruit de l'un des animaux (vache, coq, chien) lors du survol du curseur.

    action possible:

    drag&drop d'une des icônes animaux sur une des "notes". Si le son correspond à l'animal, l'icône animal s'entoure d'un cercle vert sinon rien.

    Quel élément swing javaFX permet ce type d'action ?

    D'avance merci.

    PS: quand bien même ce "scénario" serait réalisable il me serait pas possible de dessiner en vectoriel n'est-ce pas?

  5. #5
    Modérateur
    Avatar de joel.drigo
    Homme Profil pro
    Ingénieur R&D - Développeur Java
    Inscrit en
    Septembre 2009
    Messages
    12 430
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D - Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2009
    Messages : 12 430
    Points : 29 131
    Points
    29 131
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par Torx26 Voir le message
    PS: quand bien même ce "scénario" serait réalisable il me serait pas possible de dessiner en vectoriel n'est-ce pas?
    Si, bien sûr, on peut toujours dessiner en vectoriel. On peut

    1. dessiner en vectoriel à l'extérieur de Java, produire une image bitmap et la charger en Java,
    2. on peut dessiner en vectoriel en Java pour construire une image bitmap, qui sert de cache et qu'on affiche ensuite
    3. on peut dessiner en vectoriel directement dans un composant.



    Point de vue affichage :
    La solution 3 étant la moins performante, mais avec 3 icônes, ça ne sera pas si gênant que ça.
    La solution 2 permet d'afficher le motif dans différentes tailles, avec un maximum de précision, mais tout en gardant une performance d'affichage optimum.
    La solution 1 est la plus simple à mettre en oeuvre en Java.

    Point du vue gestion de fichier
    Les solutions 1 et 2 nécessitent soit de pouvoir charger un format vectoriel (on gérer son propre format, ou un format standard (SVG), et des bibliothèques existent pour ça, mais ça peut alourdir l'application), soit de tout dessiner avec des ordres Java2D, ce qui est peut être très fastidieux à mettre en oeuvre.
    La solution 3 est native. Mais il faut avoir un logiciel capable dessiner en vectoriel, puis de convertir du vectoriel en bitmap.


    Ensuite, pour le reste, en Swing (en JavaFX je ne peux pas dire), c'est très simple : tous tes icônes sont des JLabel.
    L'expression "ça marche pas" ne veut rien dire. Indiquez l'erreur, et/ou les comportements attendus et obtenus, et donnez un Exemple Complet Minimal qui permet de reproduire le problème.
    La plupart des réponses à vos questions sont déjà dans les FAQs ou les Tutoriels, ou peut-être dans une autre discussion : utilisez la recherche interne.
    Des questions sur Java : consultez le Forum Java. Des questions sur l'EDI Eclipse ou la plateforme Eclipse RCP : consultez le Forum Eclipse.
    Une question correctement posée et rédigée et vous aurez plus de chances de réponses adaptées et rapides.
    N'oubliez pas de mettre vos extraits de code entre balises CODE (Voir Mode d'emploi de l'éditeur de messages).
    Nouveau sur le forum ? Consultez Les Règles du Club.

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    En dessin vectoriel tu as aussi la librairie batik. Comme c'est du SVG derrière tu as accès à toute la pile d'event SVG, y compris les mouse drag si tu veux changer les objets de position.

Discussions similaires

  1. Swing Drag and Drop
    Par adissa357 dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 26/11/2013, 19h38
  2. [Swing] Drag And Drop et Dimension JPanel
    Par nicolav dans le forum AWT/Swing
    Réponses: 4
    Dernier message: 14/06/2008, 01h16
  3. Réponses: 2
    Dernier message: 09/08/2007, 18h56
  4. Réponses: 6
    Dernier message: 06/03/2007, 09h07

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