Salut
Comment peut savoir "facilement" si le curseur est au dessus de la form ?
++
Salut
Comment peut savoir "facilement" si le curseur est au dessus de la form ?
++
L'évènement MouseEnter se déclenche lorsque la souris passe au dessus d'un contrôle (y compris un Form).
En fait j aimerais detecter quand la souris entre sur la form et quand elle en ressort... le probleme est que la form contient des controles ...
j ai deja essaye avec Mouse enter et Mouse leave mais cela ne marche que lorsque le curseur est sur la form mais plus sur un controle de la form
Salut,
il suffit de redefinir la methode OnMouseLeave de ta form, pour qu'elle ne declenche son event que si la souris est effectivement en dehors de la form (et pas sur un autre controle). Ca peut donner ca :
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 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); this.MouseEnter += Form1_MouseEnter; this.MouseLeave += Form1_MouseLeave; } void Form1_MouseLeave(object sender, EventArgs e) { button1.Text = "Souris sortie!"; } void Form1_MouseEnter(object sender, EventArgs e) { button1.Text = "Souris entrée!"; } protected override void OnMouseLeave(EventArgs e) { if (!this.ClientRectangle.Contains(this.PointToClient(Control.MousePosition))) base.OnMouseLeave(e); } } }
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager