vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Mausereignis bei bestimmten Feldkoordinaten auslössen 
Autor: Dragonfly
Datum: 02.07.08 18:51

Hallo ich habe eine Frage zur Auslösung eines Ereignisses per Maussteuerung.

Sobald die Maus in einem bestimmten Bereich ist soll dieser die Hintergrundfarbe verändern (siehe Bild).



Bisher habe ich so ein Ereignis ausgelösst indem ich den entsprechenden Bereich mathematisch definiert habe. Das ganze ist sehr aufwendig und die Tatsache das nach jeder Mausbewegung eine Unzahl an Select Case Anweisungen, Schleifen usw. durchlaufen werden trägt auch nicht unbedingt dazu bei das der Prozessor entlastet wird...

Da ich nun eine höhere Anzahl solcher Ereignisse auslössen muss (etwa 60) . Suche ich nach einem Weg dieses leichter und einfacher zu erreichen als durch die bisher von mir durchgeführte mathematische Zuordnung.

Mein derzeitiger Gedanke besteht darin dass die entsprechenden Ereignisse ausgelösst werden sobald die Mauskoordinaten sich im Bereich eines vordefinierten BitmapFeldes befinden. Das entsprechende Feld habe ich schon erzeugt nur weiß ich nicht ganz wie ich es mit dem Mausereigniss in Verbindung bringen soll ?

In habe jetzt erst einmal ein rechteckiges bmpFeld erzeugt und das Mausereigniss zumindest grob damit in Verbindung gebracht. Sobald die Koordinate des Mauszeigers nun in X-Richtung kleiner als die Breite des Feldes und in Y-Richtung kleiner als dessen Höhe ist wird in einem Label ein Text ausgegeben. Mir fehlt irgendwie noch der passende Befehl...

 
XMaus = e.X
YMaus = e.Y
 
If XMaus < bmp08Vier.Width And YMaus < bmp08Vier.Height Then
Label3.Text = "Drinnen"
Else
Label3.Text = "Drausen"
End If
Ich bin für jede Idee und jeden Ratschlag dankbar

Follow the white rabbit...

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Mausereignis bei bestimmten Feldkoordinaten auslössen 
Autor: Zardoz
Datum: 02.07.08 19:28

Hallo Dragonfly,
sieh dir mal das an:
http://www.vbarchiv.net/forum/read.php?f=2&t=124781&i=124796

Gruss,

Zardoz

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Mausereignis bei bestimmten Feldkoordinaten auslössen 
Autor: VBStein
Datum: 02.07.08 19:31

Hai,

man definiert eine Region. Mittels dem Path-Werkzeug kann eine unregelmäßige Form definiert und in eine Region umgewandelt werden. Hat man die Region, so lässt sich ganz einfach mit der PtInRgn() Funktion ermitteln, ob die Maus in diesem Bereich ist. Dann nutzt man noch ein Feature der Regions: RgnFrame um den Rahmen ein - oder auszuschalten.

Hört sich schwerer an als es ist. Man muss sich etwas mit den komplexeren Themen der GDI auseinander setzen, wie Path und Region.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel