Dauer-Beep bei Tastendruck
-
Hallo,
ich möchte in C meine Tastatur als eine Art Keyboard nutzen. Also das man eine Taste drückt und während sie gedrückt ist soll ein Beep-Ton kommen, der erst aufhört wenn ich sie loslasse.Wie kann ich das realisieren? Wie die Beep-Methode geht ist mir klar, aber nicht wie ich denn Beep dauernd machen kann, bis ich die Taste los lasse.
Schon mal Danke für die Antworten
-
Hallo,
Schau dir doch mal OnKeyDown und OnKeyUp an.
-
Hab ich schon dran gedacht - aber den Beep kann ich ja nur auf eine bestimmte Zeitspanne machen. Also nicht sagen: "Fang an mit piepsen". Und dann später wieder "lass es". Die Methode will ja bereits eine Zeitspanne in ms.
Oder gibts da noch ne andere Möglichkeit nen Beep zu erzeugen?
-
Evtl. eine Schleife, die Beep aufruft und solange läuft bis Taste losgelassen wird.
Ganz viele kleine Beeps ergeben einen grossen Beep.
-
Leider nein. Das habe ich auch schon versucht. So eine Schleife lässt sich machen, aber ganz viele kleine Beeps ergeben leider nur theoretisch einen großen Beep - praktisch nicht. Praktisch liegt da nämlich noch eine Verzögerung dazwischen. Bin mir nicht sicher wieso, aber ist so.
Selbst das hier
while(true) Beep(1000, 1);ergibt leider keinen konstanten Ton, da bei jedem Durchlauf aus mir nicht ersichtlichen Gründen eine winzig kleine Pause gemacht wird, die anstatt einem Ton nur noch ein Rattern aus dem Summer bringt. Ist denke ich mal von der Hardware her so.
-
Hallo
Du wirst nicht drumerhum kommen eine komplexere Art der Tonerzeugung als Beep zu nehmen. Entweder du schaust dich in der WinAPI um, oder du gehts gleich zu DirectX über, dort gibt es auch einen Teil der für Soundeffekte zuständig ist.
bis bald
akari