Click-Event einfangen

23/05/2009 - 16:33 von Johannes Albrecht | Report spam
Hallo,

gibt es eine intelligente Methode festzustellen ob ein Mausklick innerhalb
eines best. Bereiches auf meinem Formular stattfindet?
 

Lesen sie die antworten

#1 Frank Dzaebel
23/05/2009 - 21:12 | Warnen spam
Hallo Johannes,

gibt es eine intelligente Methode festzustellen ob ein Mausklick
innerhalb eines best. Bereiches auf meinem Formular stattfindet?



ja, aber da es mehrere gibt, muss ich Dich
da zuerst fragen,

- ob es der Bereich eines Controls ist,
den Du meinst?
- ob der Bereich auf der Form liegt und
mit keinem Control überlappt?

Die MouseClick Events werden normal je nachdem,
worüber die Maus steht, an andere Ziele geschickt.

Du könntest zum Beispiel einfach
ggf. den Event MouseClick behandeln:

Panel panel1 = new Panel();

private void Form1_Load(object sender, EventArgs e)
{
panel1.Location = new Point(20, 20);
panel1.Size = new Size(100, 100);
panel1.BackColor = Color.LightBlue;
panel1.MouseClick += new MouseEventHandler(panel1_MouseClick);
Controls.Add(panel1);
}

void panel1_MouseClick(object sender, MouseEventArgs e)
{
Debugger.Break();
}

==
Wenn Maus-Clicks auf beliebige Bereiche erkannt werden
sollen, ist ggf. folgendes Verfahren anzuwenden (je nachdem,
wie Du meine Ausgangsfragen dazu beantwortest) :

[Application.AddMessageFilter-Methode (System.Windows.Forms)]
http://msdn.microsoft.com/de-de/lib...ilter.aspx

[IMessageFilter-Schnittstelle (System.Windows.Forms)]
http://msdn.microsoft.com/de-de/lib...ilter.aspx


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen