Button Paint-Ereignes

MikeBi

Mitglied
Hallo,

ich möchte einen Button mit einer LED ausstatten. Dazu brauche ich im Paint-Ereignis, ob der Button gerückt ist oder nicht. Aber ich kann die Eigenschaft niergendwo finden. Muss ich wirklich diese Eigenschschaft parallel mitführen (OnCklich,..) ?

Mike
 
Hi

Ich weiß nicht, ob ich dich verstanden hab?
Du brauchst eine Information, die dir kennzeichnet, ob der Button gedrückt ist und ich nehm mal an, der Button dann am Besten auch so dargestellt wird?!

Dann nutze besser die CheckBox. Diese kannst du umstellen, dass sie wie ein Button aussieht, der dann gedrückt oder eben nicht gedrückt dargestellt wird. ( = Property Checked)
 
Hallo,

ich habe parallel es auch mit einer CheckBox versucht. Nur leider ist Checked scheinbar erst gesetzt, wen man den MouseButton wieder losläßt. Ich wollte aber die LED schon leuchten lassen, wenn der Button (CheckBox) schon gedrückt wird.

Mike
 
die Klasse Control hat statische Eigenschaften MouseButtons und MousePosition.

Mit MousePosition könntest du theoretisch prüfen ob sich die Maus über deinem Control befindet und über MouseButtons auswerten ob gedrückt wird.

Allerdings würde ich wahrscheinlich eher die MouseUp / MouseDown Ereignisse auswerten, in einem privaten Feld merken ob gedrückt wurde.

Und das private Feld im Paint Ereignis des Buttons auswerten.
 
Hallo,

ich habe parallel es auch mit einer CheckBox versucht. Nur leider ist Checked scheinbar erst gesetzt, wen man den MouseButton wieder losläßt. Ich wollte aber die LED schon leuchten lassen, wenn der Button (CheckBox) schon gedrückt wird.

Mike

Hi

Dann negier doch einfach den Checked-Wert!
C#:
private void checkBox1_MouseDown(object sender, MouseEventArgs e)
{
    label1.Text = (!checkBox1.Checked).ToString();
}
 
Zurück