Bien le bonjour, c'est mon premier message sur ce forum (qui ma aidé a me tirer de mauvaises situations un bon nombre de fois) mais là je n'ai pas trouver de réponse (ni même de question) sur le problème que j'ai.
Alors voila, je présente mon projet:
Je souhaite faire un logiciel de schématique électronique avec, intégré, un oscilloscope afin d'observer les tensions en certain point d'un circuit.
Jusque là il n'y a pas trop de rapport avec le sujet du message...
Alors, j'ai un Form Mdi parent, dans lequel est placé un form enfant qui contient tout les composants placés par l'utilisateur, lors d'un ajout de composant, j'ajoute dynamiquement une picturebox qui contient l'image de celui ci, puis se voit attribuer un nom:
.name = "type du composant" + id.tostring
Et je lui assigne un sub qui est déclenché par le mouvement de la souris.
(Le but est simplement de pouvoir déplacer le composant)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 AddHandler graph.Controls.Item(tran.Name).MouseMove, AddressOf move_comp
voici ce sub :
Tout ceci ce fait à partir d'un module "action.vb"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub move_comp(ByVal sender As Object, ByVal E As MouseEventArgs) setactnull() If E.Button = Windows.Forms.MouseButtons.Left Then Dim selected_control As PictureBox = sender selected_control.Enabled = False graph.test_pos(E.X, E.Y) graph.ner.Text = finalx.ToString selected_control.Location = New Point(finalx, finaly) selected_control.Enabled = True End If End Sub
La procédure "test_pos(,)" renvoi les variable finalx et finaly qui sont enfaite les coordonnées du composant une fois aligné sur la grille.
Les picturebox des composants sont situé sur le form "graph.vb", j'affiche la coordonnée "finalx" et j'obtiens une valeur qui n'est pas fixe même si le curseur ne bouge pas, il alterne deux valeur de façon très rapides.
Je pense que ce sont les coordonnées de la souris sur le form "graph" et sur le form parent.
je ne sais pas comment faire pour ne récupérer les coordonnées que sur le form "graph".
Si quelqu'un pouvais m'éclairer, je vous remercie d'avance.
(Ps: je suis encore débutant en vb.net svp soyez indulgents )
(Ps' : Désolé si il manque des éléments)
Partager