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


Тышқан арқылы берілген хабарламаны өңдеу



бет15/21
Дата14.06.2016
өлшемі3 Mb.
#135188
түріЛекция
1   ...   11   12   13   14   15   16   17   18   ...   21

3.3 Тышқан арқылы берілген хабарламаны өңдеу


TControl класында тышқанды басқарғанда өрбитін оқиғалар анықталған.

property OnClick:TNotifyEvent;

Басқару элементін тышқан арқылы таңдағанда өрбитін оқиға (тышқанның көрсеткіші басқару элементінің үстінде орналасқанда тышқанның сол жақ пернесі басылады және босатылады).



property OnDblClick:TNotifyEvent;

Басқару элементіне тышқанның сол жақ пернесімен екі рет шерткенде өрбитін оқиға.



property OnMouseDown:TMouseEvent;

Тышқанның көрсеткіші басқару элементінің үстінде тұрғанда, тышқанның пернесі басылғанда өрбитін оқиға. Оқиғаны өңдеу типі TMouseEvent:



type

TMouseEvent = procedure(Sender: TObject; Button: TMouseButton;

Shift: TShiftState; X,Y:Integer) of object;

мұндағы Sender – оқиға болған құрауышқа нұсқайтын параметр;



type

TMouseButton = (mbLeft, mbRight, mbMiddle);

Button параметірінің мәні тышқанның қай батырмасы басылғанын анықтайды (mbLeft – сол жақ, mbRidht – оң жақ , mbMiddle - ортаңғы); Shift – пернетақтаның Alt, Ctrl және Shift пернелерінің және тышқанның пернесінің күйін қадағалайды (жоғарыдағы OnKeyDown оқиғасын қараңыздар); X,Y – Sender құрауышының клиенттік аймағындағы тышқанның көрсеткішінің жергілікті координаталары (пиксельмен беріледі).

property OnMouseMove:TMouseMoveEvent;

Тышқанның көрсеткіші басқару элементінің үстінде орналасқан кезде, оны жылжытқанда өрбитін оқиға. Оқиғаны өңдеу типі TMouseMoveEvent:



type

TMouseMoveEvent = procedure(Sender: TObject; Shift: TShiftState; X,Y:Integer) of object;

Параметлері OnMouseDown оқиғасындағы сияқты мағынаны береді.

property OnMouseUp:TMouseEvent;

Тышқанның көрсеткіші басқару элементінің үстінде орналасқан кезде, тышқанның пернесін босатқанда өрбитін оқиға. Оқиғаны өңдеу типі TMouseEvent (жоғарыдағы OnMouseDown оқиғасын қараңыздар).



Мысал 3.3.1 Бұл мысал пішінде төрт панелі бар StatusBar1 (Win32 парағы) қалып – күй жолының болуын талап етеді. . Панельді қосу үшін қалып – күй жолының Panels қасиетінің мәндер өрісінің үш батырмасына шерту арқылы Editing StatusBar1.Panels терезесін шақырыңыздар. Редактірлеу терезесінің басқару панельінің Add New батырмасына төрт рет шертіңіздер. (Мысалды орындамас бұрын әрбір панельдің Width қасиетіне 150 мәнін орнатыңыздар). Қолданушы тышқанның батырмасына басқанда, тышқанды жылжытқанда және тышқанның батырмасын босатқанда пішінде тіктөртбұрыш тартылады. Тышқанның батырмасы босатылғанда тіктөртбұрыш пішіннің канвасында пайда болады. Оның сол жақ жоғарғы және оң жақ төменгі бұрыштары тышқанды басқан және босатқан уақыттағы тышқанның көрсеткішінің орналасуымен анықталады. Қолданушы тышқанды жылжытқанда тіктөртбұрыштың сол жақ жоғарғы (Left, Тор) және оң жақ төменгі (Right, Bottom) бұрыштарының координаталары қалып –күй жолында бейнеленеді. Горизонталь осьі солдан оңға қарай жүреді. Вертикаль ось – жоғарыдан төмен қарай бағытталады. Осьтер тек қана оң мәндерден тұрады.

var

StartX, StartY: Integer; {Пішіннің модульінің интерфейс бөлімінде жариялайды}



{Бұл кодты пішіннің OnMouseDown оқиғасының өңдеуіші ретінде қолданыңыздар: }

procedure TForm1.FormMouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X,Y: Integer);

begin

StartX := X;

StartY := Y;

end;

{ Бұл кодты пішіннің OnMouseUp оқиғасының өңдеуіші ретінде қолданыңыздар: }

procedure TForm1.FormMouseUp(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X,Y: Integer);

begin

Form1.Canvas.Rectangle(StartX, StartY, X, Y);

StatusBar1.Panels[0].Text := '';

StatusBar1.Panels[1].Text := '';

StatusBar1.Panels[2].Text := '';

StatusBar1.Panels[3].Text := '';



end;

{ Бұл кодты пішіннің OnMouseMove оқиғасының өңдеуіші ретінде қолданыңыздар: }

procedure TForm1.FormMouseMove(Sender: TObject;
Shift: TShiftState; X,Y: Integer);

begin

if ssLeft in Shift then { батырманың басылғанын тексеріңіздер }

begin

if Y > StartY then

begin

StatusBar1.Panels[0].Text := 'Top: ' + IntToStr(StartY);

StatusBar1.Panels[2].Text := 'Bottom: ' + IntToStr(Y);

end

else

begin

StatusBar1.Panels[0].Text := 'Top: ' + IntToStr(Y);

StatusBar1.Panels[2].Text := 'Bottom: ' + IntToStr(StartY);

end;

if X > StartX then

begin

StatusBar1.Panels[1].Text := 'Left: ' + IntToStr(StartX);

StatusBar1.Panels[3].Text := 'Right: ' + IntToStr(X);

end

else

begin

StatusBar1.Panels[1].Text := 'Left: ' + IntToStr(X);



StatusBar1.Panels[3].Text := 'Right: ' + IntToStr(StartX);

end;

end;

end;

Зертханалық жұмыс №8 “TForm объектісі


  1. Жаңа жоба құрыңыздар. Пішінге тақырып беріңіздер "Лабораторная работа №8, Фамилия Имя". Жеке каталогқа жобаны сақтаңыздар.

  2. Пішіннің өлшемін 500 де 400 пиксельге және орнын экранның центрі бойынша орнатыңыз.

  3. Пішінге өзіңіздің фирмалық иконыңызды орнатыңыз. Осы иконканы қосымшаға да орналастырыңыздар. (Қосымшаны көріңіздер).

  4. Пішінге "Моя формочка" деген көмекші кеңесті орнатыңыздар. Көмекші кеңестің түсіне қошқыл жасыл түс беріңіздер. (clLime).

  5. Тышқанның көрсеткішін пішіннің үстімен жылжыту кезінде, ол өз түсін бұрыштардағы мәндерге байланысты баяу өзгерту керек: сол жақтағы жоғарғы бұрыштың түсі - қара, сол жақтағы төменгі бұрыштың түсі - көгілдір, оң жақтағы жоғарғы - қызыл, оң жақ төменгі - ақ. Ctrl-Alt-C басу арқылы осы режимді қосуға/өшіруге болады.

  6. Тышқанның екі рет шертілгенде немесе Alt-X батырмаларының комбинациясына немесе F10 батырмасына басқанда пішін жабылады (рұқсат сұрату арқылы).

  7. Бағыттары көрсетілген пернелерге басқанда пішін жылжиды (экранның шекарасында).

  8. Тышқанның оң жақ батырмасына басқанда пішін жан – жағынан 5 пиксельге кішірейеді. Тышқанның оң жақ батырмасы мен Shift пернесіне басқанда пішін жан – жағынан 5 пиксельге үлкейеді.

Өздіктеріңнен.

  1. Пішіннің өлшемі өзгергенде шертпенің дыбысы шығады, ал өлшемнің өзі экранның төменгі жағындағы минимизация терезесінде көрсетіледі.

  2. Тышқанның ортаңғы батырмасына немесе екі шеткі батырмаларына басқанда пішін тышқанның көрсеткішінің нұсқағышына байланысты центрленеді.

Қосымша.

  1. Beep(0) процедурасы қысқа дыбыстық дабылды шақырады.

  2. RGB(r,g,b) функциясы r,g,b (от 0 до 255) параметрінің мәніне байланысты қызыл, жасыл және көк түстердің реттік нөмірін қайтарады.

  3. Application объектісі бағдарламаның маңызды қасиеттері мен әдістерін инкапсуляция жасайды Application объектісінің кейбір қасиеттері:

HintColor

Оперативті көмекші кеңестің таңбашасының түсі.

HintHidePause

Көмекші кеңестің таңбашасы пайда болып және жоғалғанға дейін миллисекунд тұратын үзіліс.

Icon

Минимизацияланған бағдарлама батырмасының пиктограммасы.

Title

Минимизацияланған бағдарлама батырмасындағы мәтін.

  1. Screen объектісі ДК экранының жұмысын жеңілдететін маңызды қасиеттер мен әдістерден тұрады. Screen объектісінің кейбір қасиеттері:

Fonts

Барлық экрандық қаріптердің тізімі.

Height, Width

Экранның ұзындығы мен ені.

IconFont

Минимизацияланған бағдарлама батырмасының мәтінінің қаріпі.

PixelsPerInch

Пиксельден дюмге өтетін экранның рұқсат беретін қабілеті.


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




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

    Басты бет