[VB] TransparencyKey Button

Seberoth

Grünschnabel
Hi,

ich wusste net wie ich das Thema genau nennen soll.
Es geht um folgendes;

Ich habe ein Windows Form wo teile des Hintergrundes ,mit hilfe von TransparencyKey, durchklickbar sind. Das funktioniert auch wunderbar. ABer nun möchte ich, das gleichzeitig beim durchklicken ein event ausgelöst wird. Wie mach ich das?

Beispiel:
Ich klick auf ein mit TransparencyKey belegtes Feld, auf dem darunterliegenden Fenster wird eine aktion aufgeführt und gleichzeitig öffnet sich eine neue Form.

Ich hoffe ihr versteht was ich meine.

MfG,
Seberoth
 
am Einfachsten wäre, wenn Du mit AddHandler die Ereignisse übergibst.
Das kannst Du dann auch mit dem Load Ereigniss machen.

Beim Click-Ereignis des Buttons, das Load Ereignis der Form auslösen...
 
Ich glaube ihr redet ein bisschen aneinander vorbei...
Aus der MSDN:
Wenn der TransparencyKey-Eigenschaft eine Color zugewiesen wird, werden die Bereiche im Formular mit derselben BackColor transparent angezeigt. Alle Mausaktionen, z. B. ein Mausklick, die für die transparenten Bereiche des Formulars ausgeführt werden, werden an die Fenster weitergegeben, die sich unter dem transparenten Bereich befinden. Wenn beispielsweise der Clientbereich eines Formulars transparent ist, wird die Ereignisbenachrichtigung für einen Mausklick in diesem Bereich an das jeweils darunter befindliche Fenster gesendet.
Das heißt der transparente Bereich gehört sozusagen gar nicht mehr zu deiner Form und Events werden direkt an das darunterliegende Fenster weitergeleitet.
Das bedeutet, dass in deiner Form gar kein Event ausgelöst wird. Man müsste also globale Mausklicks abfangen (d.h. nicht nur die Clicks die in deiner Form statt finden). Das ist bissl kompliziert, such mal nach "hook mouse event" oder schau hier:
Low-Level Mouse Hook in C#
oder auch hier:
How to set a Windows hook in Visual C# .NET
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück