Menüpunkte in einem Textfeld anzeigen

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von tron25.

    Menüpunkte in einem Textfeld anzeigen

    Hallo,

    ich habe ein etwas ungewöhnliches Problem. Ich bin blind und arbeite mit einer sogenannten Braillezeile. Das ist ein Gerät, welches Text in Blindenschrift anzeigt. Außerdem habe ich noch ein Brailledisplay, welches eine Fläche von 48x76 Braillepunkten hat. Dieses Gerät funktioniert allerdings nicht ganz so, wie eine Braillezeile. Das Brailledisplay wird per Bluetooth angesteuert und erwartet eine Bytefolge, die angibt, welche Punkte gesetzt sind und welche nicht. Das eigentliche Problem besteht darin, die Menüpunkte einer Menüleiste zu erfassen und herauszufinden, welcher Menüpunkt gerade ausgewählt ist und welche menüpunkte sich davor bzw. dahinter befinden. Außerdem wäre es gut, herauszufinden, ob der aktuelle Menüpunkt selbst ein Untermenü ist. Ich habe es schon geschafft, mir den ersten Menüpunkt anzeigen zu lassen:

    VB.NET-Quellcode

    1. Menueleiste.items.item(0).ToString)

    Der Index gibt allerdings nur die Position der Menüpunkte oben in der Menüleiste an. Wie bekomme ich den Index eines Untermenüpunktes? Die Funktion, die die Menüpunkte für das Display aufbereitet sollte ausgeführt werden, wenn ich mich in einem Menü bewege. Leider funktioniert die Tastendruckabfrage des Formulares (KeyPreview) nicht, wenn die Menüleiste aktiviert ist.

    Hat jemand von euch eine Idee?

    tron25 schrieb:

    Wenn ich allerdings mit den Pfeiltasten durch die menüs gehe, funktioniert es nicht.
    SelectedIndexChanged?
    Poste mal Deinen relevanten Code.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Leider gibt es das Ereignis "SelectedIndexChanged" bei Menüeinträgen nicht. Folgender Code funktioniert:

    VB.NET-Quellcode

    1. Private Sub BraillezeileMenue_MouseHover(sender As Object, e As EventArgs) Handles BraillezeileMenue.MouseHover
    2. MeldungAusgeben("Der Mauszeiger befindet sich auf dem Menüpunkt")
    3. End Sub

    Da ich, bzw. andere Blinde schlecht mit der Maus arbeiten können, suche ich nach einer Möglichkeit, den aktuellen Menüpunkt herauszufinden, wenn man sich mit der Tastatur durch die Menüs bewegt.