bonjour
je voudrais Synchroniser le défillement de plusieures listbox en utilisant vb.net mais je ne trouve pas léquivalent de l'évnement scroll dont j'ai l'habitude en vb6
si qlq un veut bien m'aider je lui serai reconnaissant
merçi
xc
xcxc
bonjour
je voudrais Synchroniser le défillement de plusieures listbox en utilisant vb.net mais je ne trouve pas léquivalent de l'évnement scroll dont j'ai l'habitude en vb6
si qlq un veut bien m'aider je lui serai reconnaissant
merçi
Si tu utilises WinForm
http://msdn.microsoft.com/en-us/libr...ar.scroll.aspx
Si tu utilises WPF
http://msdn.microsoft.com/en-us/libr...llchanged.aspx
bonjour
merçi pour ton aide meme si ce n'est pas la réponse voulue.
j'ai 3 listbox et je voudrais lorsque je déplace par la souris le scrollbar d'une listbox les scrollbar des deux autres listbox suivent ce mouvent
Le principe est de passer les messages de scroll aux autres listbox par message. Tu trouvera plus de détails par la
http://social.msdn.microsoft.com/for...-7879916f8b18/
Il faut juste que tu l'adaptes un petit peu pour gérer 3 listbox
Bonjour
tout d'abord je m'éxcuse pour le dérrangement!!
Votre aide m'est trés précieuse et merçi beaucoup
seulement j'ai encore un petit problème:
voila j'ai 3 listbox et veux envoyer le message à partir de chaque listbox
comme ci_dessous:
là le programme plante et m'envoie le message suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Private Sub Listbox1_Scroll(ByRef m As System.Windows.Forms.Message) Handles ListBox1.Scroll SendMessage(ListBox2.Handle, m.Msg, m.WParam, m.LParam) SendMessage(ListBox3.Handle, m.Msg, m.WParam, m.LParam) End Sub Private Sub ListBox2_Scroll(ByRef m As System.Windows.Forms.Message) Handles ListBox2.Scroll SendMessage(ListBox1.Handle, m.Msg, m.WParam, m.LParam) SendMessage(ListBox3.Handle, m.Msg, m.WParam, m.LParam) End Sub Private Sub ListBox3_Scroll(ByRef m As System.Windows.Forms.Message) Handles ListBox3.Scroll SendMessage(ListBox2.Handle, m.Msg, m.WParam, m.LParam) SendMessage(ListBox1.Handle, m.Msg, m.WParam, m.LParam) End Subpar contre si j'utilise une seule sub tout marche bienUne exception non gérée du type 'System.StackOverflowException' s'est produite dans System.Windows.Forms.dll
par conséquant j'aimerais que vous me donniez encore une petite aide et merçi
je vous envoie le fichier pour voir!!
Quand tu scroll le listbox1 il envoie un message au listbox2 qui lui même va envoyer un message au listbox1 qui renvoie un message au listbox2 ....... D'où le stackoverflow.là le programme plante et m'envoie le message suivant "Une exception non gérée du type 'System.StackOverflowException' s'est produite dans System.Windows.Forms.dll"
Il faut que tu fasses en sorte de ne pas renvoyer le message au listbox d'où le scroll a réellement été fait.
Mon code est en c#
PS : penses à mettre les balises code.
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 private List<object> from = null; public Form1() { InitializeComponent(); for (int i = 0; i < 1000; i++) { myListBox1.Items.Add(i); } for (int i = 0; i < 1000; i++) { myListBox2.Items.Add(i); } for (int i = 0; i < 1000; i++) { myListBox3.Items.Add(i); } from = new List<object>(); myListBox1.Scroll += new MessageHandler(myListBox1_Scroll); myListBox2.Scroll += new MessageHandler(myListBox1_Scroll); myListBox3.Scroll += new MessageHandler(myListBox1_Scroll); } void myListBox1_Scroll(object sender, Message m) { from.Add(sender); if (!from.Contains(myListBox1)) SendMessage(myListBox1.Handle, m.Msg, m.WParam, m.LParam); if (!from.Contains(myListBox2)) SendMessage(myListBox2.Handle, m.Msg, m.WParam, m.LParam); if (!from.Contains(myListBox3)) SendMessage(myListBox3.Handle, m.Msg, m.WParam, m.LParam); from.Remove(sender); }
Partager