Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo :)

ich hab ein kleines Problem, Folgendes:

Ich habe ein Formular, auf dem sich ein Button befindet, dieser soll mit der Maus anklickbar bleiben, aber nicht auf [Enter] reagieren.

Im Event 'OnKeyPress' des Buttons fange ich den eingegebenen Key ab.

Das ist mein momentaner Code:


void __fastcall TfrmMain::btnButtonKeyPress(TObject *Sender, char &Key)

{

  if (Key == VK_RETURN) {

	  Key = 0;

  }

}

Doch es funktioniert nicht, [Enter] kann man weiter betätigen und somit den Button auslösen.

Ich hoffe auf korrektur ;)

Viele Liebe Grüße

Julia

Geschrieben

Ich habe ein Formular, auf dem sich ein Button befindet, dieser soll mit der Maus anklickbar bleiben, aber nicht auf [Enter] reagieren.

Warum willst Du das normale Verhalten unbedingt verändern?

Auf einen Tastendruck im übergeordneten Fenster zu reagieren wird nichts bringen, da dieses Event zuerst an den Button gehen dürfte.

Geschrieben

Wenn bei der Betätigung der Entertaste in einem Form der Button reagiert, dann müsste die Eigenschaft Default auf true stehen. Ich kann morgen noch mal nachschauen. Normalerweise reagiert der Button nur auf Enter wenn er den Focus hat.

Frank

Geschrieben

Die eigentliche Frage nach dem warum hast Du leider nicht beantwortet. Immerhin sollte man von einem Verhalten, dass ein User erwarten darf, möglichst nicht abweichen.

Was kann ich dann unternehmen?

Im Zweifelsfall ein eigenes Button-Control schreiben.

Allerdings ist das nicht unbedingt so einfach, wenn Barrierefreiheit vollständig unterstützt werden muss.

Geschrieben

Das ist eine lächerliche Aufgabe meines Programmier-Lehrers, ich muss gestehen, ich habe es nicht für nötig empfunden, dies mit anzugeben.

Aufgabenstellung: "Programmieren Sie ein 'Mini-Spiel': Ein Button soll 'gefangen' werden, der Sich auf der Form zufällig sekündlich seine Position verändert."

Da ich der Meinung bin, dass es nicht im Sinn des Spiels ist, den Button mit [Enter] zu betätigen, sondern ihn tatsächlich mit der Maus zu 'fangen', will ich also die [Enter]-Funktion unterbingen/verbieten.

Aus dem Button ist nun ein Panel geworden, klappt so auch, ganz ohne der [Enter]-Funktion, gefällt mir allerdings nicht ganz so gut.

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...