![]() |
Anzeige:
|
|
|||||||
| C/C++, Visual C++, Visual C++.NET Fragen und Antworten zu C/C++, Visual C++ und Visual C++.NET |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 20.07.2005
Ort: Winnenden
Beiträge: 24
|
Hallo,
ich habe eine Windows Forms Application mit Visual Studio 2005 in C++ geschrieben. Auf dem Fenster sind ein paar Buttons, und das Programm soll sich auch über die Tastatur bedienen lassen, unter anderem mit den Pfeiltasten. Lästig ist aber, dass diese den Fokus zwischen den Buttons verschieben. Wie kann man das vermeiden? Mehr Hintergrundinfo: Das Programm soll mit dem Screenreader Jaws zusammenarbeiten. Dieser dient dazu, die Bildschirmanzeige für blinde und sehbehinderte Benutzer vorzulesen. Sie sollen das Programm einerseits per Tastatur bedienen können, aber auch die Buttons mittels Tab und Enter nutzen können. Die Pfeiltasten stören dabei, zumal Jaws bei jeder Verschiebung des Fokus den Button ansagt. Das ist sehr lästig. Die Tastatureingaben werden in den Ereignisbehandlungsmethoden KeyDown, KeyPress und KeyUp in der Klasse Form1 (abgeleitet von class Form) verarbeitet. Ich habe schon versucht, e->Handled = true zu setzen (im Methodenparameter KeyEventArgs e), aber das bringt es nicht. |
|
|
|
|
|
|
#2 (Direktlink) | |
|
Forenmaskottchen
![]() Registriert seit: 01.06.2005
Alter: 22
Beiträge: 776
|
Zitat:
i-wie versteh ich nicht so ganz was du erreichen willst: Wenn es per Pfeiltasten genutzt werden soll, muss der Fokus doch mitwandern, sonst hat das doch keinen Sinn? Klär mich mal auf^^... |
|
|
|
|
|
|
#3 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 20.07.2005
Ort: Winnenden
Beiträge: 24
|
Wenn das Programm durch die Tastatur bedient werden soll, dann unter Umgehung der Buttons. Eine Tastatureingabe soll nicht einen Button auslösen, sondern wird in der entsprechenden Ereignisbehandlungs-Methode verarbeitet.
Eine Alternative wäre es, eine bestimmte Tastatureingabe mit einem Button zu verknüpfen. Also wenn der Benutzer z.B. Pfeil nach rechts drückt, dann wäre das wie ein Klick auf einen bestimmten Button, der dieser Taste zugeordnet ist. Ideal wäre diese Lösung aber nicht. Ich weiß auch gar nicht, ob das geht. |
|
|
|
|
|
#4 (Direktlink) | ||
|
Forenmaskottchen
![]() Registriert seit: 01.06.2005
Alter: 22
Beiträge: 776
|
Zitat:
Zitat:
Ich guck noch ob man den Fokus deaktivieren kann i-wie... |
||
|
|
|
|
|
#5 (Direktlink) | |
|
Erfolgreich angemeldet
![]() Registriert seit: 20.07.2005
Ort: Winnenden
Beiträge: 24
|
Zitat:
Wenn man aber jetzt eine Pfeiltaste einer Funktion zugeordnet hat, dann wird nicht nur die Funktion aufgerufen, sondern auch der Fokus von dem Button, wo er gerade ist, zum nächsten geschoben. Und der Screenreader sagt den neuen Button brav an, weil das ja nötig ist, damit der Benutzer weiß, welchen Button er mittels Enter klicken kann. |
|
|
|
|
|
|
|
#6 (Direktlink) |
|
Forenmaskottchen
![]() Registriert seit: 01.06.2005
Alter: 22
Beiträge: 776
|
Also, nochmal kurz zusammengefasst:
- man soll das Programm ganz "normal" per Maus bedienen können - man soll das Programm per Shortcuts bedienen können Das bedienen mittels Pfeiltasten & Enter soll aber NICHT möglich sein, richtig? |
|
|
|
|
|
#7 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 20.07.2005
Ort: Winnenden
Beiträge: 24
|
Ja genau, das Programm soll per Maus und auch per Tastaturbefehle (Shortcuts) bedienbar sein.
Es wäre schön, wenn auch die Pfeiltasten als shortcuts verwendet werden könnten. Das würde gut in das Bedienungskonzept passen. Im Prinzip geht das auch, aber es stört eben die Fokusverschiebung. Man kann es Jaws nicht abgewöhnen (habe ich zumindest nicht geschafft) dass es bei jeder Fokusverschiebung den neuen Button vorliest, und das stört. Also nochmal, um es ganz klar zu machen: Die Pfeiltasten sollen nicht so verwendet werden, dass man damit den Fokus zum richtigen Button schiebt und dann Enter drückt. Sondern die zugeordnete Funktion des Programms soll durch den Druck auf die Pfeiltaste direkt ausgelöst werden. |
|
|
|
|
|
#8 (Direktlink) |
|
Forenmaskottchen
![]() Registriert seit: 01.06.2005
Alter: 22
Beiträge: 776
|
Hallo,
wurde hier bereits eine Lösung gefunden oder besteht das Problem weiterhin? Hatte leider noch keine Zeit mich näher damit zu beschäftigen... |
|
|
|
![]() |
|
| Lesezeichen |
| Stichworte |
| buttons, fokus, pfeiltasten |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| PCMCIA (datenkarten) auf laptop ohne PCMCIA slot nutzen ? | chaos123401 | Hardware - Problemlösungen | 2 | 19.03.2007 20:59 |
| Dsl nutzen ohne T-Online Software | berto | Netzwerke | 5 | 11.03.2007 11:04 |
| Fokus Problem beim Start Button | monze | Software - Allgemein | 0 | 11.08.2004 01:34 |
| Steuerung von seriellerRelaiskarte via Pfeiltasten Quelltext | Tüftler | Allgemein | 0 | 15.04.2004 20:22 |