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

monthcalendar(ili tako nesto) sa prekrizenim danima!!!

[es] :: Pascal / Delphi / Kylix :: monthcalendar(ili tako nesto) sa prekrizenim danima!!!

[ Pregleda: 3379 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Bojann
Zrenjanin

Član broj: 13255
Poruke: 217
*.dialup.neobee.net.



Profil

icon monthcalendar(ili tako nesto) sa prekrizenim danima!!!18.03.2005. u 19:44 - pre 232 meseci
Radim jedan program koji se bavi rasporedom masina po nekim gradilistima. Uglavnom te masine mogu da budu slobodne, zauzete ili rezervisane za odredjeni vremenski interval.dakle, u bazi stoji podatak o tome kada je konkretna masina uzeta i kada se vraca. Takodje moguce je izvrsiti i rezervaciju.
problem je u sledecem: Kada korisnik pita da li je i kada neka masina zauzeta ja mu iz baze cupam intervale u kojem je ona zauzeta ili rezervisana. Da li ja taj raspored zauzetosti ili rezervisanosti mogu nekako da prikazem na nekakvom kalendaru kao sto je monthcalendar ili tako nesto? Da li takva nekakva komponenta postoji da se na njoj prikazuju recimo prekrizeni i neprekrizeni dani u zavisnosti od necega(konkretno kod mene od zauzetosti masina)
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.211.EUnet.yu.



+1 Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!20.03.2005. u 14:07 - pre 232 meseci
Pogledaj TCalendar klasu ("Samples" stranica palete). Jedno resenje bi bilo da nasledis tu klasu, dodas event "AfterDrawCell" koji bi pozivao iz preklopljene DrawCell metode i u tom eventu onda mozes da precrtavas datume.
 
Odgovor na temu

Bojann
Zrenjanin

Član broj: 13255
Poruke: 217
62.108.101.*



Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!20.03.2005. u 14:14 - pre 232 meseci
Kako se dodaje event na nasledjenu kasu i kako se ona uopste nasledjuje?
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.91.eunet.yu.



+1 Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!20.03.2005. u 18:52 - pre 232 meseci
Ajde ipak varijanta bez eventa, verovatno ce ti biti lakse.

Nisam probao, ali trebalo bi otprilike ovako:

Code:


uses Calendar;

type

TMojKalendar = class (TCalendar)
// znaci klasa TMojKalendar nasledjuje klasu TCalendar
  protected
    procedure DrawCell(ACol, ARow: Longint; ARect: TRect; AState: GridDrawState); override;
// znaci da "preklapas" metodu (proceduru objekta) DrawCell (koja inace iscrtava sadrzaj celije grid-a), odnosno dajes svoju implementaciju te metode
  end;

procedure Register;

implementation

procedure TMojKalendar.DrawCell(ACol, ARow: Longint; ARect: TRect; AState: TGridDrawState);
var CellDay : word; CellDate : TDate;
begin
  // prvo pozoves nasledjenu DrawCell metodu koja ce iscrtati celiju
  inherited;
  // zatim izracunas datum celije koja se iscrtava
  CellDay := strtoint (CellText[ACol, ARow]);
  CellDate := EncodeDate (Year, Month, CellDay);
  // pa ako treba precrtati
  if TrebaPrecrtatiDan (CellDate)
     then begin
            // precrtas celiju
            Canvas.Pen.Color := clRed;
            Canvas.MoveTo (ARect.Left, ARect.Top);
            Canvas.LineTo (ARect.Right, ARect.Bottom);
          end;
end;

// Ova procedura registruje komponentu tj. postavlja ju na "Samples" stranicu palete
procedure Register;
begin
  RegisterComponents('Samples', [TMojKalendar]);
end;



Treba jos da:
1. dodas svoju funkciju "TrebaPrecrtatiDan" koja vraca true ako ga treba precrtati.
2. napravs Delfi paket (file/new/package), u njega dodas ovaj unit i instaliras paket.
 
Odgovor na temu

Bojann
Zrenjanin

Član broj: 13255
Poruke: 217
*.dialup.neobee.net.



Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!21.03.2005. u 19:42 - pre 232 meseci
Pa necu valjda za svaki datum racunati gde i kako treba crtati? Milsim da je to puno posla za mene, a mislio sam da i delphi ima neku mocniju opciju kada je to u pitanju. U svakom slucaju, hvala na savetima
Da li neko zna neku gotovu komponentu koja radi nesto slicno?
I jos nesto: Postoji li komponenta kao na primer DBDateTimePicker, znaci komponenta koja prepoznaje polja u tabeli koja su tipa date ili time?
 
Odgovor na temu

sasas
Saša Slavnić
radim za neke švabe

Član broj: 35478
Poruke: 617
195.246.3.*



Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!21.03.2005. u 20:11 - pre 232 meseci
Možeš eventualno da pogledaš na torry.net, tamo ima kamara komponenti za kalendare, sigurno ima nešto i za tebe.
Mislim da bi ti sigurno uradile posao komponente iz JEDI VCL biblioteke, tamo imaš grupe komponenti 'Time Framework' i 'Timeline Framework', ove poslednje imaju baš lep prikaz na način na koji ti treba (kao onaj timeline iz ms encarte).

ss.
When something is hard to do, then it's not worth doing.
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.ptt.yu.



+1 Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!21.03.2005. u 20:15 - pre 232 meseci
Citat:

Pa necu valjda za svaki datum racunati gde i kako treba crtati?


Ne treba da racunas ni gde ni kako da crtas nego samo da li doticno polje (dan) treba precrtati ili ne - sve ostalo je vec uradjeno.
 
Odgovor na temu

Bojann
Zrenjanin

Član broj: 13255
Poruke: 217
*.neobee.net.



Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!21.03.2005. u 20:17 - pre 232 meseci
Kakve su to komponente iz JEDI VCL biblioteke i gde ih mogu naci?
 
Odgovor na temu

sasas
Saša Slavnić
radim za neke švabe

Član broj: 35478
Poruke: 617
195.246.3.*



Profil

icon Re: monthcalendar(ili tako nesto) sa prekrizenim danima!!!21.03.2005. u 20:42 - pre 232 meseci
JEDI i JEDI VCL možeš pronaći na sourceforge.net

biblioteke su open source. vodi računa da ako sve instaliraš, JEDI VCL je zaista ogroman (mislim da ima preko 500 komponenti), ali meni je jako zanimljiv...

ss.
When something is hard to do, then it's not worth doing.
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: monthcalendar(ili tako nesto) sa prekrizenim danima!!!

[ Pregleda: 3379 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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