OVH Cloud OVH Cloud

Mouse_Up récalcitrante

10 réponses
Avatar
Aski
Bonjour,

Dans un ListView, je voudrais réaliser certaines instructions lorsque
l'utilisateur relâche le bouton gauche de la souris après avoir sélectionné
des Items avec la cette souris.
L'évènement Mouse_Up se produit bien lorsqu'on a sélectionné un seul
élément, mais pas lorsqu'on en sélectionne plusieurs.
Aucun des autres évènements de Mouse ne se produit dans ces circonstances.
Est-ce un bug de VB6 ou ai-je manqué une étape ?
Merci d'avance.
--
Aski

10 réponses

Avatar
Jacques93
Bonjour Aski,
Aski a écrit :
Bonjour,

Dans un ListView, je voudrais réaliser certaines instructions lorsque
l'utilisateur relâche le bouton gauche de la souris après avoir sélectionné
des Items avec la cette souris.
L'évènement Mouse_Up se produit bien lorsqu'on a sélectionné un seul
élément, mais pas lorsqu'on en sélectionne plusieurs.
Aucun des autres évènements de Mouse ne se produit dans ces circonstances.
Est-ce un bug de VB6 ou ai-je manqué une étape ?
Merci d'avance.



Je n'ai pas ce comportement. L'événement MouseUp se produit bien sur
chaque click de souris, même avec MultiSelect = True. Quelles sont les
caractèristiques de ton ListView (Affichage, etc ...)

--
Cordialement,

Jacques.
Avatar
Aski
Salutatoi Jacques93,

Tu as donc déclaré :

Bonjour Aski,
Aski a écrit :
Bonjour,

Dans un ListView, je voudrais réaliser certaines instructions lorsque
l'utilisateur relâche le bouton gauche de la souris après avoir
sélectionné des Items avec la cette souris.
L'évènement Mouse_Up se produit bien lorsqu'on a sélectionné un seul
élément, mais pas lorsqu'on en sélectionne plusieurs.
Aucun des autres évènements de Mouse ne se produit dans ces
circonstances. Est-ce un bug de VB6 ou ai-je manqué une étape ?
Merci d'avance.



Je n'ai pas ce comportement. L'événement MouseUp se produit bien sur
chaque click de souris, même avec MultiSelect = True. Quelles sont les
caractèristiques de ton ListView (Affichage, etc ...)



Pour chaque click isolé, l'évènement se produits bien.
C'est en sélectionnant plusieurs items qu'il ne se produit pas.
J'ai pensé à modifier les propriétés, mais je n'ai pas constaté de
changement.
Je te joins l'extrait de l'entête de la feuille concernée.
Merci de t'occuper de mon cas. ;-)
--
Cordialement
Aski

//////////////////////////////////////////
Begin MSComctlLib.ListView lvwMessages
Height = 2200
Left = 120
TabIndex = 1
Top = 1300
Width = 10625
_ExtentX = 18733
_ExtentY = 3889
View = 3
LabelEdit = 1
MultiSelect = -1 'True
LabelWrap = -1 'True
HideSelection = 0 'False
FullRowSelect = -1 'True
GridLines = -1 'True
_Version = 393217
ForeColor = -2147483640
BackColor = -2147483643
BorderStyle = 1
Appearance = 1
NumItems = 5
BeginProperty ColumnHeader(1) {BDD1F052-858B-11D1-B16A-00C0F0283628}
Text = "Objet"
Object.Width = 11483
EndProperty
BeginProperty ColumnHeader(2) {BDD1F052-858B-11D1-B16A-00C0F0283628}
SubItemIndex = 1
Text = "Émetteur"
Object.Width = 3528
EndProperty
BeginProperty ColumnHeader(3) {BDD1F052-858B-11D1-B16A-00C0F0283628}
SubItemIndex = 2
Text = "Date"
Object.Width = 3175
EndProperty
BeginProperty ColumnHeader(4) {BDD1F052-858B-11D1-B16A-00C0F0283628}
SubItemIndex = 3
Text = "Dates pour tri"
Object.Width = 0
EndProperty
BeginProperty ColumnHeader(5) {BDD1F052-858B-11D1-B16A-00C0F0283628}
SubItemIndex = 4
Text = "ID"
Object.Width = 0
EndProperty
End
///////////////////////////////////////////////////////////////////
Avatar
Jacques93
Aski a écrit :
Pour chaque click isolé, l'évènement se produits bien.
C'est en sélectionnant plusieurs items qu'il ne se produit pas.
J'ai pensé à modifier les propriétés, mais je n'ai pas constaté de
changement.
Je te joins l'extrait de l'entête de la feuille concernée.
Merci de t'occuper de mon cas. ;-)



On parle bien de la même chose, Shift-Click et Ctrl-Click pour multi
sélection ? Pour moi c'est OK avec ton ListView ... Mystère

--
Cordialement,

Jacques.
Avatar
Aski
Salutatoi Jacques93,

Tu as donc déclaré :

Aski a écrit :
Pour chaque click isolé, l'évènement se produits bien.
C'est en sélectionnant plusieurs items qu'il ne se produit pas.
J'ai pensé à modifier les propriétés, mais je n'ai pas constaté de
changement.
Je te joins l'extrait de l'entête de la feuille concernée.
Merci de t'occuper de mon cas. ;-)



On parle bien de la même chose, Shift-Click et Ctrl-Click pour multi
sélection ? Pour moi c'est OK avec ton ListView ... Mystère



Non, avec ces évènements, il n'y a aucun problème.
C'est une utilisation de scraper qui sélectionne avec la souris seulement,
en gardant le bouton gauche enfoncé (comme lorsqu'on sélectionne une zone
d'image dans un logiciel de dessin).
Avatar
Jacques93
Bonjour Aski,
Aski a écrit :
Salutatoi Jacques93,

Tu as donc déclaré :


Aski a écrit :

Pour chaque click isolé, l'évènement se produits bien.
C'est en sélectionnant plusieurs items qu'il ne se produit pas.
J'ai pensé à modifier les propriétés, mais je n'ai pas constaté de
changement.
Je te joins l'extrait de l'entête de la feuille concernée.
Merci de t'occuper de mon cas. ;-)



On parle bien de la même chose, Shift-Click et Ctrl-Click pour multi
sélection ? Pour moi c'est OK avec ton ListView ... Mystère




Non, avec ces évènements, il n'y a aucun problème.
C'est une utilisation de scraper qui sélectionne avec la souris seulement,
en gardant le bouton gauche enfoncé (comme lorsqu'on sélectionne une zone
d'image dans un logiciel de dessin).




D'après ce que je comprends, si tu as plusieurs éléments séléctionnés
(avec un cadre similaire à une sélection dans paint), c'est qu'une
opération de Drag and Drop a été initié, et dans ce cas la, pas de MouseUp.

--
Cordialement,

Jacques.
Avatar
Aski
Salutatoi Jacques93,

Tu as donc déclaré :

D'après ce que je comprends, si tu as plusieurs éléments séléctionnés
(avec un cadre similaire à une sélection dans paint), c'est qu'une
opération de Drag and Drop a été initié, et dans ce cas la, pas de
MouseUp.



Oui, mais aucun Drag & Drop n'est initié. C'est simplement une sélection
made-in scraper.
Je te joins le message explicatif de la vedette ;-)
Le lien donne accès à une image qui explique mieux que de longues paroles.
--
Cordialement
Aski

///////////////////////
tu cliques gauche à coté d'une ligne, tu mainteins le clic, et tu
définis une zone de sélection qui englobe tous les messages que tu
veux ...
bcp plus rapide ... mais ne fonctionne pas dans XtractOE



C'est mieux en le disant, mais tu dois avoir une souris 'designed for
Vista'



que non point !!

J'avais aussi essayé, mais la mienne ne sait pas faire.



ben pourtant, manip' basique !

en image :

http://scraper.chez-alice.fr/tempo/xtract2.png

vois le point de départ de ma sélection (clic gauche enfoncé à ce point, et
maintenu jusqu'au point d'arrivée ...

note les pointillés, qui matérialisent la zone de sélection ainsi définie
...
////////////////////////////


begin 666 wink.gif
M1TE&.#EA#P`/`+,``````+^_O___````````````````````````````````
M`````````````````````"'Y! $```$`+ `````/`````0T,$@):ITX5,'Y
MQ4 G>E,XC@`EF.MJIJSEQ>PI;C9:YZYGOQK?C12<R8C%7P;7^60TEA0F`@`[
`
end

begin 666 lol.gif
M1TE&.#EA#P`/`)$"`````/__`````````"'_"TY%5%-#05!%,BXP`P$````A
M^00%"@`"`"P`````#P`/```$-%!("6J=6-3 ^<5 )WI3.(X`Y9G!UFI>;,[L
M*;KV7><M;?TD'_ %6UDZ*54N6=I],II?)@(`(?D$!0H``@`L`P`#``D`!@``
7!!-0`"#JE"%0D'D-`AA69&F64ZI&`#L`
`
end

begin 666 cry.gif
M1TE&.#EA#P`/`*$``````+V]O8RM_P#__R'_"TY%5%-#05!%,BXP`P$````A
M^00!```!`"P`````#P`/```"-XP-F<>1`N%B0,8JP,'X2I1%8J5UCV2FERH,
M;N0.*"2+]HDJHV.-LA:HV78#WE!2W'10#:6B40``(?D$`0```0`L```````
M#P```C:,#9G'D0+A8D#&*L#!^$J416*E=8]DII<*#:+@HO!+/[%RNJ4U?@[]
MTH" &<,`T4$U-CC&H ``(?D$`0```0`L```````#P```CB,#9G'D0+A8D#&
M*L#!^$J416*E=8]DII<J#(/8OEDEPV,W*Z-CC=!@J-DD0-XPTSBM#D6$0L,H
M```A^00!```!`"P`````#P`/```"-XP-F<>1`N%B0,8JP,'X2I1%8J5UCV2F
MERH,;32XJ"S"Z*ATF6.-K3;0U3Z@(7$CG#0<N<,@4 ``(?Z)5&AI<R!A;FEM
M871E9"!'!W87,@8V]N<W1R=6-T960@=7-I;F<@&
M($%N:6UA=&]R(%1R:6%L(%9E<G-I;VXL('9I<VET('5S(&%T(&AT=' Z+R]W
M=W<N=6QE860N8V]M('1O(&9I;F0@;W5T(&UO<F4N`5534U!#350`(?+4$E!
M3EE'248R+C!*0V]P>2!O9B!);6%G90%#;W!Y(&]F($EM86=E`4-O<'D@;V8@
H26UA9V4!0V]P>2!O9B!);6%G90%097)S;VYA;"!#;VUM96YT`0``.P``
`
end

begin 666 smile.gif
M1TE&.#EA#P`/`)$!`````+^_O___`````"'Y! $```$`+ `````/`````(N
MC V9QY$"X6(@6GGJO0!)+3RA$XDA:&Y6JGXMIX$K%G,8^2EE]G:4?&ID%+Y#
#`0`[
`
end
Avatar
Jacques93
Bonjour Aski,
Aski a écrit :
Salutatoi Jacques93,

Tu as donc déclaré :


D'après ce que je comprends, si tu as plusieurs éléments séléctionnés
(avec un cadre similaire à une sélection dans paint), c'est qu'une
opération de Drag and Drop a été initié, et dans ce cas la, pas de
MouseUp.




Oui, mais aucun Drag & Drop n'est initié. C'est simplement une sélection
made-in scraper.
Je te joins le message explicatif de la vedette ;-)
Le lien donne accès à une image qui explique mieux que de longues paroles.



OK, j'arrive à reproduire le phénomène made-in scraper ;-) , mais je
n'ai pas d'explication, et encore moins de solutions.


--
Cordialement,

Jacques.
Avatar
Aski
Salutatoi Jacques93,

Tu as donc déclaré :

Oui, mais aucun Drag & Drop n'est initié. C'est simplement une
sélection made-in scraper.
Je te joins le message explicatif de la vedette ;-)
Le lien donne accès à une image qui explique mieux que de longues
paroles.



OK, j'arrive à reproduire le phénomène made-in scraper ;-) , mais je
n'ai pas d'explication, et encore moins de solutions.



Je commençais à doûter.
Sais-tu si l'API de ListView est plus riche que le ListView de VB ?
Sinon, j'essaierai lorsque je transposerai XtractOE (c'est lui) en VB 2005.
Merci.
--
Cordialement
Aski
Avatar
Jacques93
Bonjour Aski,
Aski a écrit :
Salutatoi Jacques93,

Tu as donc déclaré :


Oui, mais aucun Drag & Drop n'est initié. C'est simplement une
sélection made-in scraper.
Je te joins le message explicatif de la vedette ;-)
Le lien donne accès à une image qui explique mieux que de longues
paroles.



OK, j'arrive à reproduire le phénomène made-in scraper ;-) , mais je
n'ai pas d'explication, et encore moins de solutions.




Je commençais à doûter.
Sais-tu si l'API de ListView est plus riche que le ListView de VB ?
Sinon, j'essaierai lorsque je transposerai XtractOE (c'est lui) en VB 2005.
Merci.



Je n'arrive pas à remettre la main sur lien MSDN, à défaut celui qui
concerne CE .Net 4.2, il y a plus de messages que VB n'en propose :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceui40/html/ceconListViewControlsReference.asp?frame=true

On peut mettre un Hook sur le handle de fenêtre du Listview VB
(ListView1.hwnd) ou lui envoyer des messages.

J'ai essayé avec Spy de voir les messages qui transitent lors des
différentes utilisations de la souris, mais je dois fatiguer, car aucun
message n'est intercepté :-(

Je reprends demain, j'y verrai peut être plus clair.



--
Cordialement,

Jacques.
Avatar
Aski
Salutatoi Jacques93,

Tu as donc déclaré :

/> Je n'arrive pas à remettre la main sur lien MSDN, à défaut celui qui
concerne CE .Net 4.2, il y a plus de messages que VB n'en propose :

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wceui40/html/ceconListViewControlsReference.asp?frame=true

On peut mettre un Hook sur le handle de fenêtre du Listview VB
(ListView1.hwnd) ou lui envoyer des messages.

J'ai essayé avec Spy de voir les messages qui transitent lors des
différentes utilisations de la souris, mais je dois fatiguer, car
aucun message n'est intercepté :-(

Je reprends demain, j'y verrai peut être plus clair.



Je voudrais attendre la fin de la sélection pour récupérer le nombre
d'éléments sélectionnés.
Or, justement, ton lien indique qu'il existe le message GET_SELECTEDITEM qui
semble donner ce nombre.
Ceci voudrait dire que l'on peut réaliser mon objectif avec dot.net mais pas
avec VB 6. ;-(
--
Cordialement
Aski