Windows Azure Cloud Storage ermöglicht es Ihnen bereits ab 0,10€ pro GB/Monat die Vorteile der Cloud zu nutzen.
Willkommen bei dotnet-snippets.de! Snippet hinzufügen Login Registrieren
Snippets in der Datenbank: 1550 | Anzahl registrierter User: 1840 | Besucher online: 147
Hauptmenü
Home
Top Ten
Zufälliger Snippet
FAQs
.NET Community
dotnet-forum.de
dotnet-kicks.de
Social

RSS Feeds
Rss Alle Snippets
Rss C#
Rss VB.NET
Rss C++
Rss ASP.NET
Partner
Member of Microsoft Community Leader/Insider Program (CLIP)

Label per Hover erkennen


Autor: Gast
Sprache: C#
Bewertung:
1.31 (3 votes)
Anzahl der Aufrufe: 4034
  
Kick it on dotnet-kicks.de  

Beschreibung:

Wenn man mit der Maus über ein Label fährt, wird anhand der Mausposition und des Label-Location, das Label bestimmt.

Abgelegt unter: Label, Maus, Mausposition, Hover.



C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
private void label1_MouseHover(object sender, EventArgs e)
{
foreach (Control lbl in Controls)
{
if (lbl.Name.Contains("lbl"))
{
					//Errechnet die Position des Mauszeigers
//die Position über welchem Label sich der //Zeiger befindet

Point mousePosition = PointToClient(new Point(MousePosition.X, MousePosition.Y));

//Wenn der Zeiger innerhalb des Bereiches //des Labels ist
//über welchem er sich befindet

if (lbl.Location.X <= mousePosition.X && lbl.Location.Y <= mousePosition.Y && mousePosition.X <= lbl.Location.X + lbl.Width && mousePosition.Y <= lbl.Location.Y + lbl.Height)
{
MessageBox.Show(label1.text.ToString();
}
}
Sie haben Fragen zu diesem Snippet oder brauchen Hilfe bei der .NET Entwicklung?
Freundliche und kompetente Entwickler helfen Ihnen gern weiter im Forum für .NET Entwicklung.



Kommentare:
(Zum Schreiben von Kommentaren bitte anmelden.)

Kosmo schrieb am:  02.10.2008 13:00:00

Der "sender" aus den Methoden-Parametern ist bereits das Label, bei dem das MouseHover-Ereignis eingetreten ist. Es reicht vollkommen aus das sender-Objekt auf Label zu casten.


private void label1_MouseHover(object sender, EventArgs e)
{
Label lbl = sender as Label;
if(lbl != null)
{
MessageBox.Show(lbl.Text);
}
}
B# schrieb am:  07.10.2008 18:41:33

Danke für den Hinweis...
Das spart mir jetzt wirklich eine Menge Code


schlecht sehr gut
1 2 3 4 5 6 7 8 9 10
Nur angemeldete User können Snippets bewerten.