Datentyp von Tastatur

  • VB.NET

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von picoflop.

    Datentyp von Tastatur

    Hallo Forum,

    ich benötige den Datentyp für Tastaturen.

    In Ruby definiere ich meine Tasten immer in einem Hash und einem Key zugewiesenen Hexadeziemalen Wert.
    Hier wäre dies denke ich auch möglich, weis aber nicht ob es den Rahmen sprengt.

    eigentlich würde mir vorerst ein geeigneter Datentyp reichen, Long ist glaube ich so einer, bin mir aber nicht sicher.
    Ich kenne GetAsyncKeyState sowie den TastaturHook, konnte daraus aber nicht direkt lesen. Bei GetAsyncKeyState kann man ja beispielsweise "Keys.Tab" o.ä. mitgeben, aber die müssten jaauch irgendeinen Datentyp haben...
    Oder irgendeine Lib die ich übergangen habe.

    Nebensächliche Frage: Kann ich bestimmte tasten "sperren", unddie nicht gesperrten werden erkannt, wenn ich sie drücke?
    Also was man bei Bildmitschnittprogrammen beispielsweise kennt: Du klickst in ein Edit, drückst eine taste und diese wird Automatisch erfasst und eingetragen.


    Nja, wäre für Hilfe dakbar.

    Kagurame schrieb:

    ich benötige den Datentyp für Tastaturen.

    PlastikMitBeweglichenTeilen?


    In Ruby definiere ich meine Tasten immer in einem Hash und einem Key zugewiesenen Hexadeziemalen Wert.
    Hier wäre dies denke ich auch möglich, weis aber nicht ob es den Rahmen sprengt.

    eigentlich würde mir vorerst ein geeigneter Datentyp reichen, Long ist glaube ich so einer, bin mir aber nicht sicher.
    Ich kenne GetAsyncKeyState sowie den TastaturHook, konnte daraus aber nicht direkt lesen.

    Irgendwie wird nicht wirklich klar, was du willst.

    "Keys" ist eine ENUMERATION. Jeder Wert ist deshalb INTEGER.

    Aber irgendwie wäre es vermutlich einfacher, wenn du erklären würdest, was du MACHEN willst und du nicht fragst, welche Lösung zu einem nicht nährer spezifizierten Problem passt. Ansonsten wäre die Antwort nämlich 42 ...

    Kagurame schrieb:

    Also was man bei Bildmitschnittprogrammen beispielsweise kennt: Du klickst in ein Edit, drückst eine taste und diese wird Automatisch erfasst und eingetragen.
    Sowas in der Art. Der Benutzer kann über selbst definierte Tastenküzel / Kombinationen Ereignisse auslösen, so wie es da steht.
    Ich denke, es ist irrelevant, was genau ich realisieren will, die Information hier sollte reichen, die Vorgehensweise kenne ich. Ich programmiere seit drei Jahre, benötige hier nur einen geeigneten Datntyp.


    Zitat von »Kagurame«

    ich benötige den Datentyp für Tastaturen.
    PlastikMitBeweglichenTeilen?

    Vielleicht doof ausgedrückt, aber der Datentyp, der zur speicherung von Tasten in diesem Sinne dient.

    Von Enurmerationen habe ich nicht viel Ahnung, schaue sie mir aber im Moment an.

    Kagurame schrieb:

    Ich programmiere seit drei Jahre

    Kagurame schrieb:

    Von Enurmerationen habe ich nicht viel Ahnung

    Dann hast du aber nicht viel mit "richtigen" Programmiersprachen gearbeitet ...

    Du willst auf einen Tastendruck reagieren? Form.KeyPreview=true, Keydown, Keypressed event handlen.
    Du willst eine "Taste" speichern? Je nach Event/Funktion ist eine Taste entweder vom Typ Keys oder Char oder ggf direkt Integer. Läßt sich alles in einem Integer "speichern". Wobei es sich mir persönlich nicht erschließt, warum man eine Taste "speichern" muss ... ???
    Wenn es dir darum geht, aus den Tastendrücken einen STRING zu erzeugen, so wandelt man üblicherweise die "Taste" (wleche gedrückt wurde) in String um und hängt sie wiederum an einen bestehenden String an.

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Sub Form1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
    3. ' nicht druckende Zeichen müssen natürlich behandelt werden ...
    4. Me.Label1.Text &= e.KeyChar.ToString
    5. End Sub
    6. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    7. Me.KeyPreview = True
    8. End Sub
    9. End Class
    In Ruby gibt es kein Enum, soviel dazu. Ruby gilt als hohe und mächtige Programmiersprache. Dort habe ich einen we gefunden.

    Warum speichern? Das es später auch verfügbar ist. Mache es als String nun, für meine Datenbank. Und wie ich es zusammenstelle / realisiere im Detail, gucke ich mir später an.

    Aber danke für die Hilfe.