
A mellékelt példaprogram megnyitása előtt a ShiftCode.pas-ban lévő komponenst telepítenie kell a Delphi alá. Ehhez válassza a Component - Install Component menüpontot. A program kipróbálásához számítógépének rendelkeznie kell hangkártyával illetve hangfallal.
A komponensünkben először is a Morze ABC elemeinek megfelelő konstansokat deklaráljuk, melyekben a megfelelő kódot tároljuk el.
const
a: string ='.-';
umlauta: string ='.-.-';
b: string ='-...';
c: string ='-.-.';
d: string ='-..';
e: string ='.';
f: string ='..-.';
g: string ='--.';
h: string ='....';
...
Készítünk két függvényt, melyekkel a ti és a tá kódoknak megfelelő hangfájlokat szólaltathatjuk meg.
procedure TMorseCode.playTi;
begin
sndPlaySound(PChar('ti.wav'), 0);
end;
procedure TMorseCode.playTa;
begin
sndPlaySound(PChar('ta.wav'), 0);
end;
Ahhoz, hogy a sndPlaySound függvényt használhassuk, a komponens uses részében meg kell adnunk a multimédiás eszközök kezeléséért felelős MMSystem unit-ot. Az egyes hangokat egy-egy wav fájlban tároljuk.
Ezután létrehozunk egy playMorse nevű függvényt, mely egy szöveget vár paraméterként a text változóban, és annak megfelelően megszólaltatja a hangokat.
procedure TMorseCode.playmorse(text: string);
var ii,jj: integer;
begin
A kapott szöveget karakterenként meg kell vizsgálnunk, elejétől a végéig.
for ii:=1 to length(text) do
begin
Ha az adott karakter megegyezik az „a” betűvel, akkor az ’a’ konstansban eltárolt kódnak megfelelően megszólaltatjuk az egyes hangokat.
if text[ii]='a' then
begin
for jj:=1 to length(a) do
begin
if a[jj]='.' then playTi;
if a[jj]='-' then playTa;
end;
end;
A fenti vizsgálatot a Morze ABC minden egyes elemére elvégezzük.
if text[ii]='ä' then
begin
for jj:=1 to length(umlauta) do
begin
if umlauta[jj]='.' then playTi;
if umlauta[jj]='-' then playTa;
end;
end;
...
Miután megszólaltattuk az adott betűnek megfelelő Morze-kódot, az FDelay-ben meghatározott msec-ig várunk a következő vizsgálatra. Minél nagyobbra adjuk meg ezt az értéket, annál jobban elkülönülnek az egyes betűk Morze-kódjai.
Mellékelt példaprogram segítségével mindenki maga is kipróbálhatja a komponens használatát.