windows.beep
Achtung, Funktion (bei Erfolg Rückgabe true) arbeitet synchron, dh. die Kontrolle wird erst nach
Ablauf der gewünschten Zeit an das Programm zurückgegeben!
Anwendungsbeispiel "Morsen"
morsen0.zip
procedure TForm1.bAusgebenClick(Sender: TObject);
const
dit = 200;
dah = 3*dit;
space = 6*dit; // + 1 dit-Abstand nach Zeichen
var
f,d : cardinal;
s : string;
i : integer;
procedure warte(t: longint);
var
a: longint;
begin
a := GetTickCount;
repeat
Application.ProcessMessages;
until (GetTickCount > a+t);
end;
begin
f := StrToInt(eF.text);
s := mCode.text;
for i := 1 to Length(s) do
case s[i] of
'.' : begin windows.Beep(f,dit); warte(dit); end;
'-' : begin windows.Beep(f,dah); warte(dit); end;
' ' : warte(space);
end;
end;
|
Soundkarte ansprechen