HSG

Aktuelle Seite: HSG/Fächer/Informatik/Material/Delphi

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