Мысал 3.2.1 OnKeyDown оқиғасының өңдеуіші Alt+Ctrl+Z пернелерінің қосындысына басқанда Form1 құрауышының пішіннің фонының түсіне clAqua (көгілдір) мәнін береді.
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
IF (Shift=[ssAlt,ssCtrl]) AND (Key=ORD(’Z’)) THEN Form1.Color:=clAqua;
end;
Пернелердің кодын VCL Reference анықтама жүйесінің Virtual Key Codes, Key Codes бөлімдерінен көруге болады.
property OnKeyPress:TKeyPressEvent;
Символдық перне басылғанда өрбитін оқиға. Оқиғаны өңдеу типі TKeyPressEvent:
type
TKeyPressEvent = procedure(Sender: TObject;
var Key: Char) of object;
Key параметрі – басылған перненің ANSI-кодын (символ) анықтайды.
property OnKeyUp:TKeyEvent;
Оқиға пернетақтадағы басылған пернені босатқанда өрбиді. Оқиғаны өңдеу типі TKeyEvent (жоғарыдағы OnKeyDown оқиғасын қараңыздар).
Мысал 3.2.2 OnKeyPress оқиғасының өңдеуіші Form1 құрауышы үшін «R» символдық пернесі басылғанда пішіннің фонының түсін қызылға өзгертеді, ал осы пернені босатқанда OnKeyUp оқиғасының өңдеуіші пішіннің фонының түсіне алғашқы мәнін орнатады (clBtnFace).
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
If Key='R' then Form1.Color:=clRed;
end;
{пернеге басқанда пернетақтаның регистрі және тілдік бөлінуі есепке алынады}
procedure TForm1.FormKeyUp(Sender: TObject;
var Key: Word; Shift: TShiftState);
begin
If Key=ORD('R') then Form1.Color:=clBtnFace;
end;
Осымен қатар TwinControl класында терезелік элемент активті болғанда немесе активті болмаған жағдайда өрбитін оқиғалар анықталған:
property OnEnter:TNotifyEvent;
Терезелік элемент енгізу фокусын алғанда өрбитін оқиға. Оқиғаны өңдеу типі TNotifyEvent.
type
TNotifyEvent = procedure(Sender: TObject) of object;
мұндағы Sender оқиға көзі - объектісіне нұсқаудан тұрады.
property OnExit:TNotifyEvent;
Терезелік элемент енгізу фокусын жоғалтқанда өрбиді.
TControl класында басқару элементі тышқан, перне және таймер арқылы қалыптастырылған оқиғаларды қалай қабылдайтынын анықтайтын қасиет бар:
property Enabled: Boolean;
Егер қасиетің мәні TRUE болса, онда – қабылдайды,
FALSE – қабылдамайды.
TScreen класында 2 оқиға анықталған:
property OnActiveControlChange: TNotifyEvent;
Оқиға пішіндегі активті басқару элементі өзгергенде өрбиді.
property OnActiveFormChange: TNotifyEvent;
Оқиға бағдарламада активті элемент өзгергенде өрбиді.
Достарыңызбен бөлісу: |