Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour à tous,
Encore un petit soucis de mon côté, j'espère que quelqu'un aura une solution à me proposer.
J'ai 2 DW (dw_salle[1/2] ) créées dynamiquement dans un user_object (uo_planning).
Je veux pouvoir passer des statictexts d'une DW à l'autre. (en gros faire comme un drag&drop mais en bougeant réellement le statictext ).
Pour cela, lorsque je clique sur un statictext de dw_salle1, je crée dans uo_planning un objet dw_etiquette et je rends le statictext de dw_salle1 invisible.
Dans la construction de mon dw_etiquette, je lui donne focus et lui envoie
send( Handle( this ), WM_NCLBUTTONDOWN, HTCAPTION, long( this.x, this.y) )
avec WM_NCLBUTTONDOWN = 161 et HTCAPTION = 2
Cela me permet de simuler le clic gauche enfoncé sur dw_etiquette et de permettre le déplacement de mon dw_etiquette avec la souris.
Jusque là, tout va bien...
Là où ça se gâte, c'est quand je relache le bouton de la souris : je n'arrive pas à récupérer cet événement.
Quelqu'un a une idée ?
J'ai tenté de créer un dw_etiquette.ue_lbuttonup() avec pbm_lbuttonup...mais je n'y rentre pas.
J'ai tenté, dans l'événement dw_etiquette.other() avec message.number = 512 ou 514, et là aussi, je n'ai rien...
Je veux savoir à quel moment je lache dw_etiquette, pour recréer, dans dw_salle2, mon statictext que j'avais dans dw_salle1.
Merci d'avance ;-)
Hors ligne
Salut,
ce que je comprends pas c'est pourquoi tu ne passes pas par l'utilisation standard du DragN'Drop ?
Pourquoi utiliser un Send() ? au lieu d'un Drag(Begin!) ?
Hors ligne
Car l'utilisation du drag&drop ne va pas me déplacer mon dw_etiquette avec le pointeur de ma souris mais va juste me changer l'icone de mon pointeur de souris
Dernière modification par Sebou (24-05-2013 12:30:08)
Hors ligne
Sebou a écrit:
Car l'utilisation du drag&drop ne va pas me déplacer mon statictext avec le pointeur de ma souris mais va juste me changer l'icone de mon pointeur de souris
Si j'ai bien compris tu ne déplaces pas vraiment non plus le staticText avec ta méthode actuelle (tu le caches et en recrées un autre après)
Hors ligne
rincevent a écrit:
Sebou a écrit:
Car l'utilisation du drag&drop ne va pas me déplacer mon statictext avec le pointeur de ma souris mais va juste me changer l'icone de mon pointeur de souris
Si j'ai bien compris tu ne déplaces pas vraiment non plus le staticText avec ta méthode actuelle (tu le caches et en recrées un autre après)
Oui effectivement. Au départ, je ne faisais des déplacements qu'au sen de dw_salle1 donc je bougeais vraiment le statictext...
Maintenant, je dois faire des déplacements de dw_salle1 vers dw_salle2 donc je le masque, j'en crée un nouveau au dessus des dw_salle et quand je lache, je voudrais recréer un statictext dans dw_salle2
Hors ligne
Fais peut-être un Drag(Begin!) en plus de ce que tu fais, juste pour pouvoir utiliser l'event dragdrop après ?
Hors ligne
Euhhhhhh je me suis perdu dans mes explications.
En fait, ce n'est pas un statictext que je bouge mais bel et bien une DW.
Du coup, en lisant mon erreur, je me suis dit "Tiens, si tu tentais avec un statictext plutot qu'une datawindow"
Avec un statictext, ca fonctionne !! C'est à n'y rien comprendre :-/
Hors ligne
Et en encapsulant ton dataobject dans un userobject, et en déplaçant ce userobject, ça ne pourrait pas régler ton problème?
Hors ligne