Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 2.939 pregleda

Najnovija ↓

Nasledjeni formular 01.10.2006. u 15:32 · pre 244 meseca #1
Ukoliko promenim neko svojstvu u nasledjenom formularu kako da vratim to svojstvo kao sto je u roditeljskom? Koristim Delphi 6, a u Cantovoj knjizi (Delphi 5) kaze da je to komanda iz Obejct Inspektora koja se zove Revent to Inherited. Nema toga (u ovoj verziji), ili ne mogu naci.
Potpis
Mislim, šta reći !
Re: Nasledjeni formular 01.10.2006. u 16:42 · pre 244 meseca #2
> Ukoliko promenim neko svojstvu u nasledjenom formularu kako da vratim to svojstvo kao sto je u roditeljskom? Koristim Delphi 6, a u
> Cantovoj knjizi (Delphi 5) kaze da je to komanda iz Obejct Inspektora koja se zove Revent to Inherited. Nema toga (u ovoj verziji), ili ne mogu naci.

Otvrori .dfm i samo obriši red sa tim propertijem.
Potpis
Do not be a help vampire (http://slash7.com/pages/vampires), use the google.

How to ask questions the smart way:
http://www.catb.org/~esr/faqs/smart-questions.html
http://solair.eunet.rs/~fangor...stions/smart-questions.sr.html
Re: Nasledjeni formular 04.10.2006. u 01:29 · pre 244 meseca #4
Pa izaberes zeljeni property nasledjene komponente u ObjInspectoru, zatim right-click i izabere "Revert to inherited". Dodouse nisam 100% siguran da li je to bilo jos u D5, ali malo toga je promenjeno od tada tako da najverovatnije ima. Ako nema onda ti rucni edit dfm fajla ne gine...

Btw. pitanje cisto onako, zna li neko zasto u dfm fajlovima sve klase nasledjene od VCL klase (npr. od TForm) pocinju sa object Form1: TForm1, dok ako bi npr. TForm2 nasledio taj TForm1 onda pise inherited TForm2: TForm2. Verovatno zbog toga da bi IDE znao da ce sve ne-overriden property-e naci u baznoj klasi, ali zar to isto ne vazi i za prvi slucaj (TForm1)? To mi lici na neki bas zesci budz samog jezika, nije li taj TForm1 takodje najnormalniji naslednik TForm-a...
Re: Nasledjeni formular 04.10.2006. u 19:00 · pre 244 meseca #5
OK, nasao sam, a u knjizi stoji preko OI-a da se radi.

Nego, mene zanima, ako se deklarise Form1: TForm1, onda moze i Form2:TForm1 ,znaci dve promenjive tipa istog formulara, gde se ovo koristi, i kako se iskoristi?
Potpis
Mislim, šta reći !
Re: Nasledjeni formular 04.10.2006. u 21:21 · pre 244 meseca #6
Pa koristi se uvek i svuda... :)

Delphi tu malo zna da zbuni delphi pocetnike, ako se do tada nisu susretali sa objektnim programiranjem, pogotovu bivse VB programere.
Za svakog naslednika klase TForm koji napravis (preko File->New->Form, znaci taj tvoj TForm1), Delphi automatski napravi jedan globalni var Form1: TForm1 i instancira objekat u glavnom programu (.dpr fajl) koristeci Application.CreateForm(TForm1, Form1) sto se svodi na Form1 := TForm1.Create(Application) i verovatno jos nesto sto ne znam. "Promenjiva" Form1 je "tipa" TForm1 i deklarisana je u unitu Form1.pas, ali se pravi objekat (po defaultu, automatski) instancira u .dpr fajlu, u pomenutom redu. To znaci da ti takodje mozes da napravis svoju "promenjivu" MojaForma: TForm1, i posle poziva MojaForma := TForm1.Create(Application) mocices da prikazes formu (MojaForma.Show) i da radis sa njom sta hoces... U principu svi veci programi koriste takav pristup za rukovanje formama jer bi bilo idiotski instancitrati 20+ formi odmah po startu aplikacije i svaku od tih formi uvek eksplicitno referencirati preko jedne dedicated "promenjive".

Ako ti nista od ovoga nije jasno nadji neku knjigu o objektnom programiranju i "sve ce ti se samo kas'ti", ovo je tipican slucaj klase i objekta, doduse sa malo nezaobilazne delphi automatike...
Re: Nasledjeni formular 04.10.2006. u 23:46 · pre 244 meseca #7
Citat:
_v!rus_: (po defaultu, automatski) instancira u .dpr fajlu, u pomenutom redu. To znaci da ti takodje mozes da napravis svoju "promenjivu" MojaForma: TForm1, i posle poziva MojaForma := TForm1.Create(Application) mocices da prikazes formu (MojaForma.Show) i da radis sa njom sta hoces...


OK, sad mi je jasno, za prvu promenjivu on automatski instancira, a za moju moram rucno, to mi nije bilo jasno.
Hvala.
Potpis
Mislim, šta reći !
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme