Лекциялар жинағы жинақтаған: Ражабова Аида 012-2013 оқу жылы мазмұНЫ мазмұны кіріспе 3



жүктеу 1.79 Mb.
бет14/21
Дата21.04.2019
өлшемі1.79 Mb.
түріЛекция
1   ...   10   11   12   13   14   15   16   17   ...   21

Зертханалық жұмыс №7 "Қарапайым Windows-қосымшасын құру"


  1. «Моя первая программа» атты тақырыбы бар пішіннің терезесін экранда бейнелейтін бағдарлама құрыңыздар. Қосымшаны іске қосыңыз.

  2. Бағдарлама өзгертулер енгізіңіздер. Тамғаны пайдалана отырып, терезенің тура ортасына «Hello world!» мәтінін шығарыңыздар. Қаріптің түсін, өлшемін өзгертіңіздер. Қосымшаны іске қосыңыздар.

  3. сәйкес келетін командалық батырманы басқанда «Hello world!» сөзінің үстіне «Я программирую на Delphi» сөзі шығатындай етіп бағдарламаны өзгертіңіздер. Мәтінді шығару үшін Edit құрауышын қолданыңыздар.

Property Visible:Booleanбастапқыда құрауыш көрінетін бола ма? соны анықтайды.

  1. Құрауыштар ағымды көмекші кеңес тұратындай етіп бағдарламаны толықтырыңыздар.

Property Hint: String – элементтер туралы қысқаша анықтама ақпараттан тұрады. Property ShowHint: Boolean – егер мәні True болса, онда меңзер элементтің үстінде тұрғанда Hint қасиетінде берілген қысқаша анықтамадан тұрады.

  1. Екі айнымалы жарияланғаннан кейін оларға қандай да бір мәндер меншіктелетіндей бағдарлама құрыңыздар. Осы мәндерді көбейтіңіздер және алынған нәтижені экранда бейнелеңіздер. Бүтін санды мәнді жолға айналдыратын функцияны қолданыңыздар.

  2. Негізгі пішіннің терезесіне Memo, Edit, Label құрауыштарын және “OK” және “Close” екі батырмасын орналастырыңыздар. Edit енгізу жолындағы мәтін “OK” батырмасына басқанда өзгеріссіз Label тамғасына және Memo көпжолды редактіріне көшетіндей бағдарлама құрыңыздар.

[имя строки ввода].SetFocus операторының көмегімен терезенің экранда пайда болған кезінде (пішіннің оқиғасын қолданыңыздар) және “OK” батырмасына басқанда енгізу жолы үшін енгізу фокусын орнатыңыздар.

Пішіннің оқиғалары:

Пішін құрылғанда және оның Visible қасиетінің мәні True болғанда, келесі оқиғалар тіркелген ретімен орындалады:

1. OnCreate – пішінді бастапқы құрғанда орындалады.

2. OnShow – пішін көрінер алдында орындалады.

3. OnActivate – пішін белсенді болғанда өрбиді.

4. OnPaintпішін экранда салынар алдында өрбиді (пішін белсенді болғанда немесе көрінетін болғанда).



OnDestroy оқиғасы – OnCreate қарама - қарсы, пішінді жойғанда орындалады.

  1. №5 – ші тапсырманың бағдарламасын - айнымалылардың мәндері енгізу жолдары арқылы енгізілетіндей етіп өзгертіңіз. Пішінге келесі әрекетке көмекші кеңес беретіндей тамғаны орналастырыңыз.
    Ұсыныс: Пішінге 4 құрауышты орналастырыңыз – Button(OK, OK, Close, Результат), 1 – Edit (айнымалылардың мәндерін енгізу үшін), 2 тамға Label - көмек кеңесті және нәтижені шығару үшін. Visible қасиетін және SetFocus әдісін қолданыңыздар.

3.2 Пернетақта арқылы берілген хабарламаны өңдеу


TWinControl класында пернетақтамен жұмыс істегенде пайда болатын оқиғалар анықталған. Оларға келесі оқиғалар кіреді:

property OnKeyDown:TKeyEvent;

Оқиға пернетақтаның пернесі басылғанда өрбиді. Оқиғаны өңдеу типі TKeyEvent:



type

TKeyEvent = procedure(Sender: TObject; var Key: Word;


Shift: TShiftState) of object;

мұндағы Sender – активті басқару элементіне сілтеме жасайтын параметр; Key – басылған перненің коды;



type

TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight,


ssMiddle, ssDouble);

Shift – пернетақтаның Alt, Ctrl, Shift пернелерінің және тышқанның пернелерінің күйін қадағалайды (көптіктің типі, оның элементтері: ssShiftShift батырмасы басылды, ssAltAlt батырмасы басылды, ssCtrlCtrl батырмасы басылды , ssLeftтышқанның сол жақ батырмасы, ssRight – тышқанның оң жақ батырмасы, ssMiddleтышқанның ортаңғы батырмасы, ssDouble – тышқанның батырмасымен екі рет шерту).



Мысал 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;

Оқиға бағдарламада активті элемент өзгергенде өрбиді.




Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   21


©kzref.org 2017
әкімшілігінің қараңыз

    Басты бет