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

Windows Discussion :

Paramétrage du glisser-déposer selon l'application cible


Sujet :

Windows

  1. #1
    Membre expert
    Avatar de annedeblois
    Femme Profil pro
    Analyste d'exploitation
    Inscrit en
    Août 2005
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 485
    Points : 3 218
    Points
    3 218
    Par défaut Paramétrage du glisser-déposer selon l'application cible
    Aux modérateurs: j'espère avoir posté dans le bon forum...

    Nous sommes en train de développer une banque d'images clipart que nous distribuerons avec des licences (en revante) de la suite Corel Designer 12. L'ensemble comprend Designer et PhotoPAINT.

    La banque clipart contient des images TIFF ou PNG d'arbres, de plantes et d'éléments inertes comme un banc, une fontaine, etc. destinées à être glissées-déposées sur une image en haute résolution du terrain non aménagé d'une maison. Ces images ont la particularité d'avoir un canal alpha les rendant transparentes, et l'objectif est de faire en sorte que lorsqu'on fait un glisser-déposer de ces images vers PhotoPAINT l'image conserve la «transparence».

    Pour ce faire, j'ai développé une macro VBA qui ouvre le fichier transparent comme document temporaire, crée s'il y a lieu un masque pour inclure l'arrière-plan transparent dans la copie, copie toute l'image et colle le tout dans l'image à éditer. Cela a pour résultat d'afficher l'arbre, la fleur et autres sans avoir d'arrière-plan gris.

    La macro fonctionne très bien lorsqu'on clique sur un bouton personnalisé que j'ajoute, et qu'on tire profit de la fameuse boîte de dialogue "Ouvrir image" pour aller chercher son TIFF transparent.

    Je cherche depuis plusieurs jours une façon de rendre le code exécutable lorsqu'on fait un glisser-déposer de l'image, mais le VBA de Corel PhotoPAINT ne prend pas en charge le glisser-déposer comme événement. Dans ce cas précis, il faudrait que le nom/chemin complet du fichier (tel qu'affiché dans la banque clipart) soit l'élément copié, et passé comme argument pour être récupéré en tant que chaîne de caractère pour ma macro VBA.

    Pour ce faire, je voudrais savoir s'il est possible de mettre -- dans le code source de la banque clipart -- un If Then Else permettant de choisir quoi mettre dans le Presse-papier de Windows lorsqu'on fait un glisser-déposer vers une application particulière. Voici le «pseudo-code» pour être plus précise:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // Dans la banque clipart: événement Drag à partir de l'application
    // On a sélectionné un fichier répertorié dans la banque et fait un glisser-déposé vers une application
    
    Si l'application cible est Corel PhotoPAINT 12 alors
        ' On stocke le nom et chemin d'accès du fichier 
        ' et c'est ce qui est passé en argument à PP12
        ' comme chaîne de caractère
    
    Sinon // n'importe quel autre prog comme Word, Excel, etc.
        ' l'image est transférée de la bonne vieille façon: en bitmap
    Est-ce que ce pseudo-code a du sens? Merci à l'avance,

    Anne, citoyenne canadienne
    Informaticienne, altiste et radioamateur... bref, originale
    Lire les règles...
    Un petit rappel: Je ne réponds à aucune question technique posée par MP

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Août 2003
    Messages
    878
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2003
    Messages : 878
    Points : 1 067
    Points
    1 067
    Par défaut
    Bonjour originale citoyenne canadienne,

    Tout d'abord, je ne connais rien au glisser/déposer donc ne vous attendez pas à un miracle venant de mon message.

    Mon raisonnement est sans doute naïf mais je dois dire que l'idée que l'on puisse choisir le format en fonction de la cible ne me paraît pas logique : comment votre application pourrait savoir à l'avance où l'utilisateur va choisir de déposer l'image ?

    Je ne l'ai pas lu (juste parcouru), mais peut-être trouverez-vous une réponse à http://www.catch22.net/tuts/dragdrop.asp ?

    Cordialement.
    Un problème bien exposé
    est, pour moitié, solutionné. / La connaissance s'accroît quand on la partage, pas quand on l'impose. / La violence est le langage des faibles.

  3. #3
    Membre expert
    Avatar de annedeblois
    Femme Profil pro
    Analyste d'exploitation
    Inscrit en
    Août 2005
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 485
    Points : 3 218
    Points
    3 218
    Par défaut
    Merci pour le lien.

    Anne, peut-être effectivement en train de rêver...
    Anne, citoyenne canadienne
    Informaticienne, altiste et radioamateur... bref, originale
    Lire les règles...
    Un petit rappel: Je ne réponds à aucune question technique posée par MP

  4. #4
    Membre expert
    Avatar de annedeblois
    Femme Profil pro
    Analyste d'exploitation
    Inscrit en
    Août 2005
    Messages
    1 485
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 49
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyste d'exploitation
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 485
    Points : 3 218
    Points
    3 218
    Par défaut
    Je sais que nous avons une contrainte liée au copyright des photos de notre banque. Alors, dans ce cas, j'imagine qu'il serait tout à fait possible de paramétrer l'événement drag qui survient dans la banque pour que ce qui soit passé soit le nom et le chemin d'accès du fichier et non un bitmap.

    Est-ce OK de cette manière?
    Anne, citoyenne canadienne
    Informaticienne, altiste et radioamateur... bref, originale
    Lire les règles...
    Un petit rappel: Je ne réponds à aucune question technique posée par MP

Discussions similaires

  1. Info sur le glisser/déposer de Free
    Par Space Cowboy dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/03/2006, 09h11
  2. Réponses: 2
    Dernier message: 22/02/2006, 14h33
  3. Listes Simples et propriétés / Glisser déposer
    Par MeRc|LeSs dans le forum VB 6 et antérieur
    Réponses: 12
    Dernier message: 03/12/2005, 23h14
  4. Glisser déposer sur formulaire
    Par norvel dans le forum Access
    Réponses: 5
    Dernier message: 03/10/2005, 11h20
  5. [MFC] Glisser/Déposer dans une CView
    Par octopus984 dans le forum MFC
    Réponses: 2
    Dernier message: 26/04/2005, 10h15

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