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

Qt Quick Discussion :

Création d'un logiciel avec glisser-déposer


Sujet :

Qt Quick

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2015
    Messages : 4
    Points : 2
    Points
    2
    Par défaut Création d'un logiciel avec glisser-déposer
    Bonjour, comme le titre l'indique: j'ai besoin de créer une application en utilisant la notion de drag & drop; je dois créer des blocs et les mettre dans un éditeur "drop area ", ensuite je lie ces blocs entre eux avec des flèches.
    Pouviez-vous m'aidez si quelqu'un a fait quelque chose de la sorte en QML?
    Un petit indice pour comprendre le sujet: mon application ressemble au module Simulink du logiciel Matlab.

    Merci

  2. #2
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 609
    Points : 188 584
    Points
    188 584
    Par défaut


    Il sera probablement plus facile de t'aider si tu nous dis où tu as un problème . La doc fournit déjà un exemple : http://doc.qt.io/qt-5/qtquick-draganddrop-example.html.
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2015
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour, je l'ai lu et je l'ai testé l'exemple que vous avez mentionné. Les blocs de cet exemple sont mis à des endroits bien précis. moi je veux être libre de les mettre ou je veux dans la scène
    C'est le principe de fonctionnement de Xcos dans le logiciel Scilab.
    Je veux réaliser une application qui se base sur le principe Drag&Drop, quelque chose qui ressemble à l'exemple Diagram Scene dans Qt creator. Cet exemple est programmé en C++ mais moi je veux programmez les aspects de l'interface (front-side) en QML.
    J'ai tenté quelque trucs mais à chaque fois il y a des problèmes.

    MERCI

  4. #4
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut


    Je n'ai pas encore eu à utiliser les fonctionnalités D&D de QML mais voici un morceau de code issu de l'exemple proposé par Dourouc05 qui devrait t'aider :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    import QtQuick 2.4
    import QtQuick.Controls 1.3
     
    ApplicationWindow {
        width : 800
        height : 600
     
        Item {
            id: root
            width: 64; height: 64
     
            property int actX
            property int actY
     
            MouseArea {
                id: mouseArea
     
                width: 64; height: 64
                anchors.centerIn: parent
                drag.target: tile
     
                onPressed{
                    parent.actX = mouseX
                    parent.actY = mouseY
                }
     
                onReleased{
                    parent.x = parent.x+mouseX-parent.actX
                    parent.y = parent.y+mouseY-parent.actY
                }
     
                Rectangle {
                    id: tile
     
                    width: 64; height: 64
                    anchors.verticalCenter: parent.verticalCenter
                    anchors.horizontalCenter: parent.horizontalCenter
     
                    states: State {
                        when: mouseArea.drag.active
                        ParentChange { target: tile; parent: root }
                        AnchorChanges { target: tile; anchors.verticalCenter: undefined; anchors.horizontalCenter: undefined }
                    }
                }
            }
        }
    }
    Comme il existe un composant DropArea, je suppose qu'il doit y avoir une solution plus simple, mais une nouvelle fois, je n'ai pas encore eu à trop chercher.

    Hésite pas à publier si tu trouves quelque chose de mieux.

    Bon courage.


    ++


    J
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2015
    Messages : 4
    Points : 2
    Points
    2
    Par défaut


    J'ai essayé le bout de code que tu m'as fourni et je sais très bien que ça va m'aider, ça m'a donné une idée

    Bon j'ai pas totalement résolu mon problème. Un peu de patience ça viendra

    Il y a beaucoup de boulot qui m'attend.

    Merci @dourouc05 et @Jiyuu


  6. #6
    Rédacteur/Modérateur

    Avatar de Jiyuu
    Homme Profil pro
    Développeur amateur
    Inscrit en
    Janvier 2007
    Messages
    2 456
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur amateur
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 2 456
    Points : 6 789
    Points
    6 789
    Billets dans le blog
    15
    Par défaut


    Impec

    Si tu penses que pour le moment ton problème peut être considéré comme résolu, hésite pas à le passer comme tel en utilisant

    Et si tu trouves une amélioration, alors hésite pas à poster aussi

    ++


    J
    Initiation à Qt Quick et QML : Partie 1 - Partie 2
    En cas de besoin, pensez à la
    Mon site et mes tutoriaux sur Developpez.com
    Pas de question technique par MP... Les forums sont là pour ça

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2015
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Mai 2015
    Messages : 4
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Je m'excuse parce que j'en demande trop, au fait l'item créer par le code de Jiyuu se déplace dans le même composant.

    J'aimerai que ce rectangle se déplace vers un autre composant.

    Je pense que c'est une astuce de signal et de slot. J'ai compris le principe théoriquement mais en pratique je n'ai pas pu le mettre en oeuvre. Nom : logiciel.JPG
Affichages : 300
Taille : 61,2 Ko

    Voila ce que je voulais exactement et MERCI infiniment

Discussions similaires

  1. Glisser-déposer avec un QListView
    Par Natrio dans le forum Débuter
    Réponses: 3
    Dernier message: 19/10/2010, 10h22
  2. Réponses: 2
    Dernier message: 23/05/2010, 04h30
  3. Glisser-déposer avec Tkinter? (Tkdnd?)
    Par tyrtamos dans le forum Tkinter
    Réponses: 2
    Dernier message: 17/07/2008, 10h53
  4. Création logiciel avec bdd
    Par thiseo dans le forum Débuter
    Réponses: 1
    Dernier message: 28/02/2008, 09h50
  5. Glisser-Déposer avec access
    Par mooh91 dans le forum IHM
    Réponses: 3
    Dernier message: 20/06/2007, 14h43

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