Pereiti prie turinio

Delphi uzdavynukas


Rekomenduojami pranešimai

Na ka, gavau uzdavinuka kuri reikia atlikt su pascaliu ;] Daug maz viskas aisq tik ant pabaigos strigau su lyg "Užduotis: papildykite programą mygtukais" Butu malonu suzinot Kubo bei saknies formules, taigi is anksto dekoju ;]

 

 

 

Sukurkite programą, kuri apskaičiuotų įvesto skaičiaus kvadratą.

Iš komponentų paletės Standard į formą Form1 įkelkite tokius komponentus:

• Panel1 - pagalbinį rėmelį,

• Label1 - etiketę programos rezultatams rodyti,

• Edit1 - langelį skaičiams klaviatūra įrašyti,

• Button1, Button2, Button3 - mygtukus programai vykdyti.

Pakeiskite etiketės Label1 antraštes ( Caption savybė).

Pakeiskite mygtukų Button1, Button2, Button3 pavadinimus (įveskite skaičių, kvadratas, baigti darbą).

Edit1 – langelis tuščias.

Etiketę Label1 užkelkite ant pagalbinio rėmelio Panel1. Išvalykite užrašą Label1 antraštėje Caption. Užfiksuokite Etiketės dydį: Properties lauke pasirinkę savybę Align, pasirinkite alClient komandą.

 

Aktyvuokite formą: Įvykių lauke (Evens) du kart spragtelėkite pele FormActivate. Jums atsivers tokia modulio Unit1 kodo lango dalis: procedure TForm1.FormActivate(Sender: TObject);

begin

 

end;

Dabar tarp žodžių begin ir end parašykite komandas: Edit1.text:='';

edit1.setfocus. Jos leis išvalyti redaguojamo lauko dalį ir įkels žymeklį į redagavimo lauką.

Dukart spragtelkite pele mygtuką Įveskite skaičių ir Jums atsivers tokia modulio Unit1 kodo lango dalis: procedure TForm1.Button1Click(Sender: TObject);

begin

 

end;

 

Dabar tarp žodžių begin ir end parašykite komandas, kurias vykdys programa, kai spustelsite mygtuką Įveskite skaičių.

a:=StrToInt(Edit1.text);

Label1.caption:='Įvestas skaičius '+IntToStr(a);

Kadangi kintamąjį a naudos kitos aprašytos funkcijos, aprašykite jį private dalyje

a: integer;

Tuos pačius veiksmus atlikite it su mygtuku Kvadratas: Dukart spragtelkite pele mygtuką Kvadratas ir atvertame lange aprašykite funkciją:

procedure TForm1.Button2Click(Sender: TObject);

begin

Label1.caption:='Skaičiaus kvadratas '+IntToStr(sqr(a));

end;

Tuos pačius veiksmus atlikite it su mygtuku Baigti darbą: Dukart spragtelkite pele mygtuką Baigti darbą ir atvertame lange aprašykite funkciją:

procedure TForm1.Button3Click(Sender: TObject);

begin

Halt;

end;

Dabar nepamirškite paspausti kompiuterio klaviatūroje klavišą F9 ir programa bus patikrinta bei įvykdyta. Jeigu sistema sukurtame modulyje ras klaidų, tai modulio apačioje bus pateikti apie tai pranešimai.

 

 

Užduotis: papildykite programą mygtukais Kubas, Šaknis, Kiti skaičiavimai, 2 etiketėmis- kitiems skaičiavimų rezultatams (Viso įvedėte … skaičių; Įvestų skaičių suma …).

Pastaba: įvedus neigiamą skaičių - kvadratinė šaknis neturi atsakymo. Tam tikslui reikia įvesti skaičiavimo apribojimą- Show Message (pranešimas apie klaidą). Turėtumėte parašyti šitokią funkciją:

procedure TForm1.Button4Click(Sender: TObject);

begin

if a>=0

then Label1.caption:='Ištraukus kvadratinę šaknį '+FloatToStr(sqrt(a))

else ShowMessage ('neigiamas argumentas')

end;

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Na gavau dar viena uzduotele, gal galit padet su "parašykite įvykio procedūrą", nes net nenumanau kokia cia procedura turetu but ;]

 

 

Sudarykite galimybę taip įvesti tekstą, kad berenkant jis iš karto automatiškai kartotųsi kitose formos vietose, skirtingais šriftais, dydžiais ir spalvomis.

Patarimas. Sukurkite teksto lauką tekstui įvesti ir kelias etiketes įvestam tekstui kartoti. Panaudokite teksto laukui įvykį OnChange (pasikeitimas), kuriam parašykite įvykio procedūrą.

Sprendimas. Formoje sukuriamos norimo dydžio, spalvų, šriftų žymės Label1, Label2, Label3 ir t.t., kuriose automatiškai kartosis tekstas, įvestas į teksto lauką Edit1.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
Na gavau dar viena uzduotele, gal galit padet su "parašykite įvykio procedūrą", nes net nenumanau kokia cia procedura turetu but ;]

 

 

Sudarykite galimybę taip įvesti tekstą, kad berenkant jis iš karto automatiškai kartotųsi kitose formos vietose, skirtingais šriftais, dydžiais ir spalvomis.

Patarimas. Sukurkite teksto lauką tekstui įvesti ir kelias etiketes įvestam tekstui kartoti. Panaudokite teksto laukui įvykį OnChange (pasikeitimas), kuriam parašykite įvykio procedūrą.

Sprendimas. Formoje sukuriamos norimo dydžio, spalvų, šriftų žymės Label1, Label2, Label3 ir t.t., kuriose automatiškai kartosis tekstas, įvestas į teksto lauką Edit1.

 

Na tai čia pačia paprasčiausia procedūra. Kaip supratau laukelius sudėliot ir įvykius sukurt moki. Įvykis automatiškai sukuria procedūrą, tarp kurios begin ir end belieka įrašyti kodą. Priklausomai nuo to kiek laukelių įdėsi, taip jie ir vadinsis. Pavyzdžiui, įdėjus 3 laukelius teksto rodymui kodas atrodytų taip:

Label1.caption := Edit1.text;
Label2.caption := Edit1.text;
Label3.caption := Edit1.text;

O visa procedūra:

procedure TForm2.Edit1Change(Sender: TObject);
begin
Label1.caption := Edit1.text;
Label2.caption := Edit1.text;
Label3.caption := Edit1.text;
end;

O teksto spalvas ir šriftą keisk per Properties>Font. Tikiuosi suprantamai paaiškinau. :)

Redagavo PixeLz
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Tarkim yra tokia programa, ar imanoma padaryt kad is to combobox eitu nustatyt ant keliu indeksu kad rasytu raide ar bet koki kita dalyka? ;]

 

procedure TForm1.ComboBox1Click(Sender: TObject);

begin

if combobox1.itemindex=1

then begin

label1.caption:='Raide'

end

else

label1.caption:='Skaicius'

Nuoroda į pranešimą
Dalintis kituose puslapiuose
Tarkim yra tokia programa, ar imanoma padaryt kad is to combobox eitu nustatyt ant keliu indeksu kad rasytu raide ar bet koki kita dalyka? ;]

 

procedure TForm1.ComboBox1Click(Sender: TObject);

begin

if combobox1.itemindex=1

then begin

label1.caption:='Raide'

end

else

label1.caption:='Skaicius'

 

Redaguok if'o sąlygą. Pavyzdžiui pridėk

or (combobox1.itemindex=2)

tada ir ant indekso 2 rašys Raide. Kad pakeistum tai ką rašyt, redaguok

label1.caption:='Raide'

Pavyzdžiui procedūrą atrodytų taip:

procedure TForm2.ComboBox1Click(Sender: TObject);
begin
if (combobox1.itemindex=1) or (combobox1.ItemIndex=2) or (combobox1.itemindex=4)
then begin
 label1.caption:='As jau moku'
  end
else
 label1.caption:='Skaicius'
end;

Redagavo PixeLz
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Kiek pažiūrėjau tai gan geras dalykas ten pasipraktikavimui. Beveik viskas paaiškinta. :lol: Čia jum objektinis programavimas į įnformatikos programą įeina, ar čia savarankiškai mokotės? O šiaip moki Pascal? Nes Delphi procedūros aprašomos labai panašiai. :D

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...