Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Pomoc za izradu programa porodicnog stabla

[es] :: Pascal / Delphi / Kylix :: Pomoc za izradu programa porodicnog stabla

[ Pregleda: 17832 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Pomoc za izradu programa porodicnog stabla15.09.2005. u 12:25 - pre 226 meseci
Caos ljudi, treba da napravim neki programcic koji ce da kreira porodicno stablo, a iskreno nemam predstavu kako da sve to organizujem i odradim
Pa ako bi neko bio ljubazan da mi detaljno objasni kako da to odradim ili jos bolje ako bi mi neko od vas iskusnijih programera poslao gotov program koji bi mogao da samo jos malo preuredim, ili slicno...
Svaka pomoc bi mi dobro dosla

Unapred zahvalan Vladica Savic
 
Odgovor na temu

nikola.j
Nikola Janković

Član broj: 15712
Poruke: 85
*.com
Via: [es] mailing liste



Profil

icon Re: Pomoc za izradu programa porodicnog stabla15.09.2005. u 14:17 - pre 226 meseci
>


idi na delphi-gems, to ti je maticni sajt VirtualTreeView komponente. Jes' da
mozda pocetniku nije lako snaci se sa VTV-om, ali je tamo bio jedan od primera
upotrebe VTV-a bas porodicno stablo. Nadam se da ce ti koristiti.
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Pomoc za izradu programa porodicnog stabla17.09.2005. u 07:13 - pre 226 meseci
OK, ali da li bi mi neko objasnio kako da to odradim od nule...

 
Odgovor na temu

PeraKojotSuperGenije
Sasa Popovic
Beograd

Član broj: 44507
Poruke: 126
*.231.eunet.yu.



Profil

icon Re: Pomoc za izradu programa porodicnog stabla17.09.2005. u 20:30 - pre 226 meseci
Ako porodicno stablo treba da sadrzi samo podatke "centralnoj osobi", njiovim roditeljima , roditeljima njihovih roditelja itd.(znaci bez brace i sestara) onda je najbolje da podatke o porodicnom stablu drzis u binarnom stablu. Ako se sluzis engleskim jezikom na www.wikipedia.org ces naci definiciju, karakteristike, realizaciju, primere...

Ako porodicno stablo treba da sadrzi podatke i o braci i sestrama... onda treba koristiti drvo umesto binarnog drveta i cini mi se (nisam nikad koristio) da je ova implementacija nesto teza ali nista nesavladivo. I ovo mozes naci na wikipediji.

Ne znam koliko imas iskustva i da li ti ovo ista pomaze? Ako treba opsirnije, reci.
Sendvic uvek pada na namazanu stranu!
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Pomoc za izradu programa porodicnog stabla18.09.2005. u 16:18 - pre 226 meseci
Naravno da bi mi opsirnija pomoc dobro dosla...
Dakle, dobio sam zadatak da napravim program porodicno stablo, ali nemam pojma kako da sve to odradim >bas kako sam vam i na pocetku rekao<, sto se tice brace, sestaqra, i osatale mnogobrojne rodbine, za pocetak bi bilo bolje da ih izostavimo iz ovoga da mi nebi dodatno komplikovali stvari
Video sam da se ovako nesto radi u Prologu, ali posto tek sad pocinjem da ucim Prolog, odlucio sam da se sa ovim problemom izborim kosteci Delphi.
Dakle p o m a g a j t e
 
Odgovor na temu

PeraKojotSuperGenije
Sasa Popovic
Beograd

Član broj: 44507
Poruke: 126
80.93.225.*



Profil

icon Re: Pomoc za izradu programa porodicnog stabla19.09.2005. u 14:25 - pre 226 meseci
Ja sad trenuto nemam vremena pa cu se javiti za koji dan. Ti se raspitaj za bracu i sestre zato sto to BITNO menja stvari.

U koju skolu ides? (ako nije tajna)
Sendvic uvek pada na namazanu stranu!
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 09:35 - pre 226 meseci
Citat:
PeraKojotSuperGenije: Ti se raspitaj za bracu i sestre zato sto to BITNO menja stvari.

U koju skolu ides? (ako nije tajna)

Raspitao sam se za bracu i sestre i nazalost mora i to da se uzme u obzir...
Sto se skole tice nije nikakva tajna, idem u Gimnaziju Leskovac

[Ovu poruku je menjao VladaLe dana 20.09.2005. u 10:37 GMT+1]

[Ovu poruku je menjao VladaLe dana 20.09.2005. u 10:38 GMT+1]
 
Odgovor na temu

PeraKojotSuperGenije
Sasa Popovic
Beograd

Član broj: 44507
Poruke: 126
80.93.225.*



Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 13:23 - pre 226 meseci
Cim budem imao sta da ti pokazem, javicu se (to ce biti za 2-3-4 dana). Usput kako stojis sa klasama u Delphiju?
Sendvic uvek pada na namazanu stranu!
 
Odgovor na temu

marcha
Nikola Marcic
Beograd/Leskovac

Član broj: 6454
Poruke: 108
*.163.eunet.yu.

ICQ: 156892888


+1 Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 13:38 - pre 226 meseci
Da li bi ti ovako nesto odgovaralo :

http://www.delmax.co.yu/stablogrupaart.jpg

(naravno umesto naziva grupa mogu da dodju imena i prezimena, ziveo od-do i sl...)

Marcha
-----------------------------------
Pretpostavka je majka zajeba.
 
Odgovor na temu

bondja

Član broj: 10286
Poruke: 167
*.adsl.sezampro.yu.



+3 Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 14:20 - pre 226 meseci
Mozes da dobijes prinicip kako to da uradis, ali sam program... malo teze, potrudi se :)

Pitanje je kako kreirati porodicno stablo, kakva je to struktura?
Na osnovu toga kako prikazati unete podatke? Kako ih sacuvati... itd...

Porodicno stablo picinje od jednog clana: osobe (musko ili zensko) dakle imamo:

TOsoba = class (TObject)
property Ime: string read FIme write FIme;
property Musko: boolean read FMusko write FMusko;
end;

Osoba moze da stupi u brak sa drugom osobom, tzv Partner (uslov: da je suportnog pola):

TOsoba = class( TObject)
public
property Ime: string read FIme write FIme;
procedure BrakSa( aPartner: TOsoba);
property Musko: boolean read FMusko write FMusko; // true, false
end;

procedure TOsoba.BrakSa ( aPartner: TOsoba);
begin
if aPartner.Musko <> Self.Musko then // moraju da su razlicitog pola!
FDrugaOsoba := aDrugaOsoba
else
ShowMessage('Greska: ne moze osoba da bude istog pola!');
end;

Sada mogu da imaju decu (uz uslov da postoji partner), dakle imamo spisak (listu dece):

TOsoba = class( TObject)
public
property Ime: string read FIme write FIme;
procedure BrakSa( aDrugaOsoba: TOsoba);
procedure NovoDete ( aDete: TOsoba)
property Musko: boolean read FMusko write FMusko; // true, false
end;

procedure TOsoba.NovoDete( aDete: TOsoba);
begin
if Assigned( FPartner) then // ako postoji partner!
begin
if not assigned( FDeca) then
FDeca := TStringList.Create; // <--- jednostavno spisak dece!

FDeca.AddObject ( aDete.Ime, aDete);
end else begin
ShowMessage('Partner nije naveden, ne postoji!')
end;
end;

Kao sto se vidi, aDete je isto tipa TOsoba, i moze se na njega dodavati drugi partner, pa na to nadovezati jos dece itd...

Da ne smaram dalje, i ovo je suvisno, pogledaj atacment :)

PS: snimanje / ucitavanje podataka tako napravljenog drveta ... pa napravi sam :)

Takodje imas i sliku (runtime.bmp) kako izgleda aplikacija u toku rada...

Poz.





[Ovu poruku je menjao bondja dana 20.09.2005. u 15:22 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 14:25 - pre 226 meseci
Sta je ustvari problem... prikazivanje ili cuvanje podataka?
Za podatke mozes iskoristiti klasu slicnu ovoj
Code:
TOsoba = class
  ID: Cardinal;
  Otac, Majka: TOsoba;
  BratSestra: array of TOsoba;
  SinCerka: array of TOsoba;
  Ime, Prezime: String;
  DatumiVremeRodjenja: TDateTime;
  .
  .
  .
end;

Kada snimas podatke na disk snimis prvo ID (sam odluci kako zelis da ga kreiras... bitno je samo da ne postoje osobe sa itim ID), ID osoba koji su roditelji, brace, sestre, sinovi, i posle snimis ime, prezime i ostale podatke koji ti trebaju.
Prikaz bi mogao da uradis samo do nekog odredjenog kolena... recimo prikazujes 5 generacija... sto je se vise udaljavas od pocetne osobe prikazujes sve manje detalja kako bi ti ostali vise prostora za ispis podataka na ekranu. Za cukunbabu je dovoljno da ispises samo ime i datum... nema potrede prikazivati njene brace i sestre... ako korisnik zeli i to da vidi pomerise kroz stablo blize njoj. Ako hoces da prikazujes kompletno stablo od recimo 5 generacija to ce biti bas komplikovano prikazati na ekranu.
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Pomoc za izradu programa porodicnog stabla20.09.2005. u 16:28 - pre 226 meseci
Trenutno je problem organizacija, za prikaz nema problema, a za cuvanje, hm, mislio sam da za to napravim bazu podataka u koju ce da se cuvaju podaci.
Naravno ako neko ima bolji predlog ili jos bolje vec uradjen primer slobodno nek postuje...

 
Odgovor na temu

bondja

Član broj: 10286
Poruke: 167
*.adsl.sezampro.yu.



+3 Profil

icon Re: Pomoc za izradu programa porodicnog stabla21.09.2005. u 08:30 - pre 226 meseci
Snimanje podataka nije bas toliki problem! Pogledaj atachment :)

Da bi prikazao bracu / seste u TOsoba dodas property:

property Roditelj: TOsoba read FRoditelj write FRoditelj;

i prosiris metodu NovoDete:

procedure TOsoba.NovoDete( aDete: TOsoba);
begin
assert( assigned( FPartner), 'Partner nije naveden, ne mogu imati decu!');

if not assigned( FDeca) then
FDeca := TStringList.Create; // <--- jednostavno: spisak dece!

FDeca.AddObject( aDete.Ime, aDete);
// da zapamtimo ko je rodtelj detetu:
aDete.Roditelj := Self; //<--- OVO JE DODATO!
end;

Tako da kada osoba hoce da sazna ko su braca i sestre, dovoljno je da pita svog roditelja da mu to izlista (pogledaj attachment).

E sada jos samo ostaje snimanje podataka u bazu. Da bi to ostvarili, potrebno je da svaka osoba dobije svoj ID, dakle dodajemo property:

property ID: integer read FID write FID;

i prosirujemo Create metodu da generise taj ID
FID := Random( MaxInt);

I to je sve! Naravno glavnu aplikaciju prosirimo da prikazuje podatke izabrane osobe, da snima i ucitava stablo...

OVO JE SADA SASVIM FUNKCIONALNA APLIKACIJA (MOZES DA PO ZELJI DODAJES JOS PODATAKA (datum rodjenja svake osobe, kada su se uzeli (brak), gde zive, odakle su... itd)

Poz!



Prikačeni fajlovi
 
Odgovor na temu

Vladica Savić
Software Developer
Toronto, Canada

Član broj: 26699
Poruke: 654



+5 Profil

icon Re: Pomoc za izradu programa porodicnog stabla21.09.2005. u 09:48 - pre 226 meseci
Ja sam mislio da koristim bazu samo da bih mogao da ubacim i slike kao BLOB polja, ali i ovako je S U P E R
Hvala na pomoci, Vladica.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Pomoc za izradu programa porodicnog stabla

[ Pregleda: 17832 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.