際際滷

際際滷Share a Scribd company logo
SHKRIMI I MESAZHEVE (KORNIZA PR DIALOG)
N谷 k谷t谷 kapitull do t谷 p谷rpunohen k谷to mund谷si:
-p谷rshkrimi i sistemit p谷r mesazhe;
-zbatimi i komand谷s showmessage;
-zbatimi i komand谷s messagedlg;
-zbatimi i komand谷s messagedlgpos.
Format si objekte themelore n谷 Delphi mund t谷 trajtohen si nj谷 dritare-dialogu. Por, kur
themi dritare-dialogu, n谷nkuptojm谷 lloj special t谷 dritares q谷 ka vetit谷 e m谷poshtme:
1. Madh谷sia e korniz谷s nuk mund t谷 ndryshohen,
2. Kjo dritare m谷 shpesh p谷rdor butonin OK, por disa dritare kan谷 edhe butona Close,
Cancel, Help.
3. N谷 shiritin e titullit (emrit) nuk ka butona p谷r minimizim dhe zmadhim.
N谷 kuad谷r t谷 Delphi ekzistojn谷 korniza q谷 vet谷 mund ti definojm谷 dhe dritare t谷 cilat ve巽se jan谷
t谷 definuara.
4.1. ShowMessage
Ajo p谷rdoret p谷r t谷 shfaqur mesazhe t谷 caktuara gjat谷 ekzekutimit t谷 aplikacionit.
Paraqitja e dritares-dialog e ndalon ekzekutimin e aplikacionit, deri n谷 mbylljen e tij, me klikim
n谷 butonin OK. Ky dialog p谷rdoret kur aplikacioni duhet ti tregoj谷 p谷rdoruesit ndonj谷 mesazh.
Detyra 1: T谷 krijohet aplikacion i cili shfryt谷zuesit i tregon a i lejohet puna me
aplikacionin apo jo. Puna lejohet vet谷m n谷 dit谷 pune. Dit谷 jo pune jan谷 e shtuna dhe e diela.
Figura 4.1.
procedure TForm1.Button1Click(Sender: TObject);
var
data:TdateTime;
i:integer;
begin
Data:=StrToDate(edit1.text);
i:=DayOfWeek(data);
if (i=1) or (i=7) then
begin
ShowMessage('SOT SHT DIT JO PUNE, NUK MUND TI QASENI APLIKACIONIT
');
Close;
end
else
ShowMessage('MIRSE ERDHT');
end;
end.
P谷r realizimin e detyr谷s s谷 dh谷n谷, 谷sht谷 p谷rdorur funksioni DayOfWeek(data) e cila n谷
baz谷 t谷 dat谷s jep numrin rendor t谷 dit谷s s谷 jav谷s. Sipas saj dit谷 e par谷 谷sht谷 dita e diel: 1, kurse e
fundit e shtun谷: 7,
Kodi i programit lejon futjen e dat谷s s谷 gabuar, shembull, p谷r dit谷 jo pune t谷 futet dat谷 e
dit谷s s谷 pun谷s.
T谷 b谷het korrigjim i kodit programor, n谷 at谷 m谷nyr谷 q谷 t谷 b谷j谷 t谷 pamundur futjen n谷
aplikacion n谷se data e sistemit nuk p谷rputhet me dat谷n e futur. N谷 k谷t谷 rast, t谷 shkruhet mesazhi:
DATA E FUTUR NUK E SOTSHME.
procedure TForm1.Button1Click(Sender: TObject);
var
data:TdateTime;
i:integer;
begin
Data:=StrToDate(edit1.text);
i:=DayOfWeek(data);
Label2.Caption := 'Today is ' + DateToStr(Date);
if data<>date then
BEGIN
ShowMessage('NUK KE FUTUR DAT T SAKT');
CLOSE;
END
ELSE
if (i=1) or (i=7) then
begin
ShowMessage('SOT SHT DIT JO PUNE, NUK MUND TI QASENI
APLIKACIONIT');
Close;
end
else
ShowMessage('MIRSE ERDHT');
end; end.
4.2. MessageDlg
Kjo dritare-dialog i ngjan t谷 m谷parshmes, me at谷 q谷 p谷rshkrimi i titullit bie n谷 grup t谷 ve巽ant谷 t谷
p谷rshkrimeve t谷 Windows-it.
Figura 4.2
N谷 rreshtin p谷r titull paraqitet fjala Information. P谷rve巽 saj, n谷 rreshtin p谷r p谷rshkrim mund t谷
paraqiten fjal谷t e m谷poshtme: Warning (shenj谷 paralajm谷ruese e verdh谷), Error (ikon谷 e kuqe me
shenj谷 ndal), Confirmation (pyet谷sor), Custom (nuk p谷rmban ikon谷).
Figura 4.3.
Numri i butonave p谷r t谷 l谷shuar dritaren-dialog mund t谷 jen谷 t谷 ndrysh谷m.
Figura 4.4.
Detyra 2: T谷 b谷het aplikacion i cili gjat谷 ekzekutimit do t谷 jap谷 vlerat e disa funksioneve
elementare, t谷 tilla si katrori i numrit 5, rr谷nja katrore e 2 dhe pjesa e plot谷 e numrit -3,8.
N谷 form谷 vendosim butonin p谷r t谷 cilin do t谷 shkruajm谷 kodin e m谷posht谷m t谷 programit:
Procedure TForm1.Button1Click(Sender: TObject);
var
s,t:string;
begin
str(sqr(5.0):3:1,t);
s:='5 n谷 katror 谷sht谷 ' + t + #13;
str(sqrt(2.0):5:4,t);
s:=s+'Rr谷nja katrore e 2 谷sht谷' + t + #13;
str(trunc(-3.8),t);
s:=s+'Pjesa e plot谷 e numri -3.8 谷sht谷'+t;
MessageDlg(s,mtInformation,[mbOk],0);
end;
Figura 4.5.
Argumentet e funksionit MessageDlg kan谷 k谷to kuptime: s - paraqet tekstin q谷 do t谷 shfaqet n谷
dritaren-dialogun, mtInformation paraqet tekstin n谷 shiritin e titullit dhe shenja- ikon谷n n谷
dritare, [mbOk] 谷sht谷 emri i butonit do t谷 shfaqet n谷 dritaren-dialog dhe zero (0) Delphit i
sh谷rben si nj谷 indikator.
Me urdhrin vijues n谷 Delphi fitohet dritarja-dialog nga figura 4.3:
MessageDlg('Edh谷na e futur nuk mund t谷 konvertohet n谷 num谷r. '+#13+
'Futni t谷 dh谷n谷 valide', mtError,[mbOk],0);
Me procedur谷n e ardhshme n谷 Delphi fitohet dritarja-dialog si n谷 figur谷n 4.4:
procedure TForm1.Button2Click(Sender: TObject);
begin
if MessageDlg('Welcome to my Object Pascal application. Exit now?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
MessageDlg('Exiting the Object Pascal application.', mtInformation,
[mbOk], 0);
Close;
end;
end;
Detyra 3: T谷 b谷het aplikacion me t谷 cil谷n p谷r N numra t谷 巽far谷dosh谷m t谷 numrave t谷 futur do t谷
llogaritet shuma.
Udh谷zime: Futet N - numri i numrave q谷 do ti mbledhim, dhe pastaj numrat futen n谷
dritaren-dialog n谷 kuad谷r t谷 nj谷 cikli.
Figura 4.6.
Procedure TForm1.Button1Click(Sender: TObject);
var
s,x:real;
t,p:string;
n,i,j:integer;
begin
val(edit1.text,n,j);
if(j<>0)or(n<=0)then
begin
messageDlg('Edh谷na nuk 谷sht谷 e sakte',mtError,[mbOk],0);
close;
end;
s:=0;
i:=1;
while i<=n do
begin
str(i,p);
t:=inputBox('Numra','Futet'+p+'-numri',' ');
val(t,x,j);
if j/<>0then
begin
messageDlg('Edh谷na nuk 谷sht谷 e sakte',mtError,[mbOk],0);
close;
end;
s:=s+x;inc(i);
end;
str(s:8:3,p);
showmessage('Mbledhja 谷sht谷 s='+p);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
application.terminate;
end;
Urdh谷ri t:=inputBox('numra','futet'+p+'-num谷r',' ');
P谷rdor funksionin InputBox, q谷 p谷rmban tre parametra. Paramet谷r i par谷 "numra" p谷rcakton se
巽far谷 paraqitet n谷 shiritin e titullit, parametri i dyt谷 'futet`+p+'num谷r', jep mesazhin q谷 do t谷
shfaqet n谷 dritaren-dialog, kurse parametri i tret谷 p谷rfaq谷son vler谷n e t谷 dh谷nave q谷 do t谷
importohen. N谷 rastin ton谷 kjo 谷sht谷 e dh谷n谷 boshe-nuk ka vler谷 fillestare.
Detyr谷: T谷 b谷het aplikacion q谷 p谷rcakton mesin gjeometrik t谷 dy gjat谷sive t谷 dh谷na. Numrat
mat谷s t谷 gjat谷sive t谷 dh谷na duhet t谷 jen谷 numra pozitiv.
Figura 4.7.
procedure TForm1.LlogaritClick(Sender: TObject);
Var
a,b,c:Real;
s:String;
i,j:Integer;
begin
Val(edit1.text,a,i);
Val(edit2.text,b,j);
If (i=1) or (j=1) then
MessageDlg('e dhena nuk nuk numt te trasformohet ne numer'+#13+
'Fut te dhene te sakte', mtError,[mbOk],0);
if (a<=0) or (b<=0) then
MessageDlg('Numri mat谷s i gjat谷sis谷 nuk 谷sht谷 i mir谷!'+#13+
'Fut vler谷 pozitive', mtError,[mbOk],0)
else
begin
c:=sqrt(a*b);
str(c:8:3,s);
MessageDlg('Mesi gjeometrike i gjat谷sive t谷 dh谷na
谷sht谷:'+s,mtInformation,[mbOk],0);
end;
end;
end.
4.3. Messagedlgpos
Shfaq dritaren-dialog me mesazh n谷 koordinata t谷 caktuara n谷 ekran.
Ky shembull p谷rdor buton n谷 form谷. Kur p谷rdoruesi klikon butonin, shfaqet dritare me mesazh
me tre butona: Yes, No, dhe butonin Cancel n谷 t谷:
procedure TForm1.Button1Click(Sender: TObject);
begin
MessageDlgPos('Are you there?',mtConfirmation, mbYesNoCancel, 0, 200, 200);
end;
Figura 4.8.
4.4 Komponentet DIALOGS
N谷 kartel谷n Dialog ndodhen komponente t谷 ndryshme p谷r dialog si OpenDialog, SaveDialog,
ColorDialog dhe t谷 tjera. Ata p谷rdoren p谷r qasje t谷 unifikuar n谷 operacionet m谷 t谷 zakonshme q谷
ekzekutohen n谷 aplikacione. N谷 programe, dialogu aktivizohet me metod谷n Execute. Asnj谷
dialog nuk kryen veprime konkrete, por vet谷m e lejon p谷rdoruesin t谷 b谷jn谷 zgjedhje, kurse
veprimet e ve巽anta realizohen n谷 kodin e programit.
4.4.1. OpenDialog i lejon p谷rdoruesit t谷 zgjedh datotek谷n nga disku q谷 d谷shironi ta lexoj谷.
Detyra 1: T谷 krijohet form谷 me dy butona dhe OpenDialog.
Figura 4.9.
Figura 4.10.
Kodi i programor q谷 mund谷son shfaqjen e OpenDialog 谷sht谷 si m谷 posht谷:
procedure TForm1.Button1Click(Sender: TObject);
begin
OpenDialog1.Execute;
end;
4.4.2. SaveDialog paraqet nj谷 dritare-dialogu standarde t谷 Windows-it. Komanda q谷 aktivizon
k谷t谷 dritare-dialog 谷sht谷 si m谷 posht谷:
SaveDialog1.Execute;
Figura 4.11.
4.4.3. ColorDialog ofron n谷 m谷nyr谷 standarde t谷 zgjidhet ngjyra. Komanda q谷 aktivizon k谷t谷
dritare-dialogu 谷sht谷 si m谷 posht谷:
ColorDialog1.Execute;
Figura 4.12.

More Related Content

Shkrimi i mesazheve

  • 1. SHKRIMI I MESAZHEVE (KORNIZA PR DIALOG) N谷 k谷t谷 kapitull do t谷 p谷rpunohen k谷to mund谷si: -p谷rshkrimi i sistemit p谷r mesazhe; -zbatimi i komand谷s showmessage; -zbatimi i komand谷s messagedlg; -zbatimi i komand谷s messagedlgpos. Format si objekte themelore n谷 Delphi mund t谷 trajtohen si nj谷 dritare-dialogu. Por, kur themi dritare-dialogu, n谷nkuptojm谷 lloj special t谷 dritares q谷 ka vetit谷 e m谷poshtme: 1. Madh谷sia e korniz谷s nuk mund t谷 ndryshohen, 2. Kjo dritare m谷 shpesh p谷rdor butonin OK, por disa dritare kan谷 edhe butona Close, Cancel, Help. 3. N谷 shiritin e titullit (emrit) nuk ka butona p谷r minimizim dhe zmadhim. N谷 kuad谷r t谷 Delphi ekzistojn谷 korniza q谷 vet谷 mund ti definojm谷 dhe dritare t谷 cilat ve巽se jan谷 t谷 definuara.
  • 2. 4.1. ShowMessage Ajo p谷rdoret p谷r t谷 shfaqur mesazhe t谷 caktuara gjat谷 ekzekutimit t谷 aplikacionit. Paraqitja e dritares-dialog e ndalon ekzekutimin e aplikacionit, deri n谷 mbylljen e tij, me klikim n谷 butonin OK. Ky dialog p谷rdoret kur aplikacioni duhet ti tregoj谷 p谷rdoruesit ndonj谷 mesazh. Detyra 1: T谷 krijohet aplikacion i cili shfryt谷zuesit i tregon a i lejohet puna me aplikacionin apo jo. Puna lejohet vet谷m n谷 dit谷 pune. Dit谷 jo pune jan谷 e shtuna dhe e diela. Figura 4.1. procedure TForm1.Button1Click(Sender: TObject); var data:TdateTime; i:integer; begin Data:=StrToDate(edit1.text); i:=DayOfWeek(data); if (i=1) or (i=7) then begin ShowMessage('SOT SHT DIT JO PUNE, NUK MUND TI QASENI APLIKACIONIT '); Close; end else ShowMessage('MIRSE ERDHT'); end; end.
  • 3. P谷r realizimin e detyr谷s s谷 dh谷n谷, 谷sht谷 p谷rdorur funksioni DayOfWeek(data) e cila n谷 baz谷 t谷 dat谷s jep numrin rendor t谷 dit谷s s谷 jav谷s. Sipas saj dit谷 e par谷 谷sht谷 dita e diel: 1, kurse e fundit e shtun谷: 7, Kodi i programit lejon futjen e dat谷s s谷 gabuar, shembull, p谷r dit谷 jo pune t谷 futet dat谷 e dit谷s s谷 pun谷s. T谷 b谷het korrigjim i kodit programor, n谷 at谷 m谷nyr谷 q谷 t谷 b谷j谷 t谷 pamundur futjen n谷 aplikacion n谷se data e sistemit nuk p谷rputhet me dat谷n e futur. N谷 k谷t谷 rast, t谷 shkruhet mesazhi: DATA E FUTUR NUK E SOTSHME. procedure TForm1.Button1Click(Sender: TObject); var data:TdateTime; i:integer; begin Data:=StrToDate(edit1.text); i:=DayOfWeek(data); Label2.Caption := 'Today is ' + DateToStr(Date); if data<>date then BEGIN ShowMessage('NUK KE FUTUR DAT T SAKT'); CLOSE; END ELSE if (i=1) or (i=7) then begin ShowMessage('SOT SHT DIT JO PUNE, NUK MUND TI QASENI APLIKACIONIT'); Close; end else ShowMessage('MIRSE ERDHT'); end; end.
  • 4. 4.2. MessageDlg Kjo dritare-dialog i ngjan t谷 m谷parshmes, me at谷 q谷 p谷rshkrimi i titullit bie n谷 grup t谷 ve巽ant谷 t谷 p谷rshkrimeve t谷 Windows-it. Figura 4.2 N谷 rreshtin p谷r titull paraqitet fjala Information. P谷rve巽 saj, n谷 rreshtin p谷r p谷rshkrim mund t谷 paraqiten fjal谷t e m谷poshtme: Warning (shenj谷 paralajm谷ruese e verdh谷), Error (ikon谷 e kuqe me shenj谷 ndal), Confirmation (pyet谷sor), Custom (nuk p谷rmban ikon谷). Figura 4.3. Numri i butonave p谷r t谷 l谷shuar dritaren-dialog mund t谷 jen谷 t谷 ndrysh谷m. Figura 4.4.
  • 5. Detyra 2: T谷 b谷het aplikacion i cili gjat谷 ekzekutimit do t谷 jap谷 vlerat e disa funksioneve elementare, t谷 tilla si katrori i numrit 5, rr谷nja katrore e 2 dhe pjesa e plot谷 e numrit -3,8. N谷 form谷 vendosim butonin p谷r t谷 cilin do t谷 shkruajm谷 kodin e m谷posht谷m t谷 programit: Procedure TForm1.Button1Click(Sender: TObject); var s,t:string; begin str(sqr(5.0):3:1,t); s:='5 n谷 katror 谷sht谷 ' + t + #13; str(sqrt(2.0):5:4,t); s:=s+'Rr谷nja katrore e 2 谷sht谷' + t + #13; str(trunc(-3.8),t); s:=s+'Pjesa e plot谷 e numri -3.8 谷sht谷'+t; MessageDlg(s,mtInformation,[mbOk],0); end; Figura 4.5. Argumentet e funksionit MessageDlg kan谷 k谷to kuptime: s - paraqet tekstin q谷 do t谷 shfaqet n谷 dritaren-dialogun, mtInformation paraqet tekstin n谷 shiritin e titullit dhe shenja- ikon谷n n谷 dritare, [mbOk] 谷sht谷 emri i butonit do t谷 shfaqet n谷 dritaren-dialog dhe zero (0) Delphit i sh谷rben si nj谷 indikator. Me urdhrin vijues n谷 Delphi fitohet dritarja-dialog nga figura 4.3: MessageDlg('Edh谷na e futur nuk mund t谷 konvertohet n谷 num谷r. '+#13+ 'Futni t谷 dh谷n谷 valide', mtError,[mbOk],0); Me procedur谷n e ardhshme n谷 Delphi fitohet dritarja-dialog si n谷 figur谷n 4.4: procedure TForm1.Button2Click(Sender: TObject); begin if MessageDlg('Welcome to my Object Pascal application. Exit now?', mtConfirmation, [mbYes, mbNo], 0) = mrYes then begin MessageDlg('Exiting the Object Pascal application.', mtInformation, [mbOk], 0); Close; end; end;
  • 6. Detyra 3: T谷 b谷het aplikacion me t谷 cil谷n p谷r N numra t谷 巽far谷dosh谷m t谷 numrave t谷 futur do t谷 llogaritet shuma. Udh谷zime: Futet N - numri i numrave q谷 do ti mbledhim, dhe pastaj numrat futen n谷 dritaren-dialog n谷 kuad谷r t谷 nj谷 cikli. Figura 4.6. Procedure TForm1.Button1Click(Sender: TObject); var s,x:real; t,p:string; n,i,j:integer; begin val(edit1.text,n,j); if(j<>0)or(n<=0)then begin messageDlg('Edh谷na nuk 谷sht谷 e sakte',mtError,[mbOk],0); close; end; s:=0; i:=1; while i<=n do begin str(i,p); t:=inputBox('Numra','Futet'+p+'-numri',' '); val(t,x,j); if j/<>0then begin messageDlg('Edh谷na nuk 谷sht谷 e sakte',mtError,[mbOk],0);
  • 7. close; end; s:=s+x;inc(i); end; str(s:8:3,p); showmessage('Mbledhja 谷sht谷 s='+p); end; procedure TForm1.Button2Click(Sender: TObject); begin application.terminate; end; Urdh谷ri t:=inputBox('numra','futet'+p+'-num谷r',' '); P谷rdor funksionin InputBox, q谷 p谷rmban tre parametra. Paramet谷r i par谷 "numra" p谷rcakton se 巽far谷 paraqitet n谷 shiritin e titullit, parametri i dyt谷 'futet`+p+'num谷r', jep mesazhin q谷 do t谷 shfaqet n谷 dritaren-dialog, kurse parametri i tret谷 p谷rfaq谷son vler谷n e t谷 dh谷nave q谷 do t谷 importohen. N谷 rastin ton谷 kjo 谷sht谷 e dh谷n谷 boshe-nuk ka vler谷 fillestare. Detyr谷: T谷 b谷het aplikacion q谷 p谷rcakton mesin gjeometrik t谷 dy gjat谷sive t谷 dh谷na. Numrat mat谷s t谷 gjat谷sive t谷 dh谷na duhet t谷 jen谷 numra pozitiv. Figura 4.7.
  • 8. procedure TForm1.LlogaritClick(Sender: TObject); Var a,b,c:Real; s:String; i,j:Integer; begin Val(edit1.text,a,i); Val(edit2.text,b,j); If (i=1) or (j=1) then MessageDlg('e dhena nuk nuk numt te trasformohet ne numer'+#13+ 'Fut te dhene te sakte', mtError,[mbOk],0); if (a<=0) or (b<=0) then MessageDlg('Numri mat谷s i gjat谷sis谷 nuk 谷sht谷 i mir谷!'+#13+ 'Fut vler谷 pozitive', mtError,[mbOk],0) else begin c:=sqrt(a*b); str(c:8:3,s); MessageDlg('Mesi gjeometrike i gjat谷sive t谷 dh谷na 谷sht谷:'+s,mtInformation,[mbOk],0); end; end; end.
  • 9. 4.3. Messagedlgpos Shfaq dritaren-dialog me mesazh n谷 koordinata t谷 caktuara n谷 ekran. Ky shembull p谷rdor buton n谷 form谷. Kur p谷rdoruesi klikon butonin, shfaqet dritare me mesazh me tre butona: Yes, No, dhe butonin Cancel n谷 t谷: procedure TForm1.Button1Click(Sender: TObject); begin MessageDlgPos('Are you there?',mtConfirmation, mbYesNoCancel, 0, 200, 200); end; Figura 4.8. 4.4 Komponentet DIALOGS N谷 kartel谷n Dialog ndodhen komponente t谷 ndryshme p谷r dialog si OpenDialog, SaveDialog, ColorDialog dhe t谷 tjera. Ata p谷rdoren p谷r qasje t谷 unifikuar n谷 operacionet m谷 t谷 zakonshme q谷 ekzekutohen n谷 aplikacione. N谷 programe, dialogu aktivizohet me metod谷n Execute. Asnj谷 dialog nuk kryen veprime konkrete, por vet谷m e lejon p谷rdoruesin t谷 b谷jn谷 zgjedhje, kurse veprimet e ve巽anta realizohen n谷 kodin e programit.
  • 10. 4.4.1. OpenDialog i lejon p谷rdoruesit t谷 zgjedh datotek谷n nga disku q谷 d谷shironi ta lexoj谷. Detyra 1: T谷 krijohet form谷 me dy butona dhe OpenDialog. Figura 4.9. Figura 4.10.
  • 11. Kodi i programor q谷 mund谷son shfaqjen e OpenDialog 谷sht谷 si m谷 posht谷: procedure TForm1.Button1Click(Sender: TObject); begin OpenDialog1.Execute; end; 4.4.2. SaveDialog paraqet nj谷 dritare-dialogu standarde t谷 Windows-it. Komanda q谷 aktivizon k谷t谷 dritare-dialog 谷sht谷 si m谷 posht谷: SaveDialog1.Execute; Figura 4.11. 4.4.3. ColorDialog ofron n谷 m谷nyr谷 standarde t谷 zgjidhet ngjyra. Komanda q谷 aktivizon k谷t谷 dritare-dialogu 谷sht谷 si m谷 posht谷: ColorDialog1.Execute; Figura 4.12.