Autor Beitrag
garv3
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Mo 16.11.09 18:33 
Hallo zusammen!

Gibt es eine Möglichkeit zu verhindern, dass Buttons, wenn sie fokussiert sind, beispielsweise mit Enter oder Space aktiviert werden?
Oder besser noch, den Fokus komplett verhindern (auch nach einem Klick mit der Maus).
Das ganze kann auch gerne projektübergeifen auf alle Buttons angewendet werden.

Dank und Gruß
garv3
danielf
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 1012
Erhaltene Danke: 24

Windows XP
C#, Visual Studio
BeitragVerfasst: Di 17.11.09 10:04 
Hallo,

spontan fällt mir ein button1.Enabled = false

Gruß Daniel
garv3 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Di 17.11.09 12:28 
Man soll ja auf den Button klicken können. Aber halt nur mit der Maus.
Die Buttons sollen einfach nicht per Tastatur clickbar sein...
Nemag
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 132
Erhaltene Danke: 2



BeitragVerfasst: Di 17.11.09 15:11 
Servus

na dann fang doch die Tastendrücke einfach ab. Es gibt Events für KeyPress/Down/Up und dort kann du dann über die EventArgs heraus bekommen welche Tasten gedrückt wurden und diese ggf. unterdrücken (e.Cancel = true) falls einer deiner Buttons den Focus besitzt.


Edit: Oder du erstellst einen eigenen Button der von Button abgeleitet ist und überschreibst z.B OnKeyDown-Methode
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
    protected override void OnKeyDown(KeyEventArgs kevent)
    {
        if (kevent.KeyData != Keys.Space)
           base.OnKeyDown(kevent);
        //Musst mal schauen welche Tasten da noch benötigt werden
    }
garv3 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 33



BeitragVerfasst: Mi 18.11.09 13:38 
Hmm...
Die Idee mit dem eigenen Button ist nicht schlecht.
Ich möchte ohnehin, dass kein Button in meiner Anwendung mit irgendeiner Taste aktiviert werden kann.
Wie genau würde dafür der Code aussehen und wo muss ich ihn einbauen, um den Standardbutton komplett zu überschreiben?

Danke!!!
derGarv
Nemag
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 132
Erhaltene Danke: 2



BeitragVerfasst: Do 19.11.09 07:41 
Servus

naja du erstellst eine neue Klasse die von Button erbt

und da kannst du fast alles machen was du willst.