Mehrere Tage in TCalendar hervorheben
- jwdietrich
- Beiträge: 173
- Registriert: Mo 20. Okt 2008, 20:50
- OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
- CPU-Target: PowerPC, Intel, ARM
- Wohnort: Hattingen, NRW
- Kontaktdaten:
Mehrere Tage in TCalendar hervorheben
Gibt es eine Möglichkeit in einer TCalendar-Komponente außer dem aktuellen Datum noch mehrere weitere Tage in bestimmten Farben zu markieren? Ich entwickle einen Kalender, in dem ich Feiertage hervorheben will. Das ist ja keine ungewöhnliche Aufgabe, so dass ich denke, dass es so etwas geben muss. Leider ist die Dokumentation sehr spärlich.
- jwdietrich
- Beiträge: 173
- Registriert: Mo 20. Okt 2008, 20:50
- OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
- CPU-Target: PowerPC, Intel, ARM
- Wohnort: Hattingen, NRW
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
Schön, aber in der LCL gibt es für TCalender die Eigenschaft BoldDays nicht. Brauche ich dafür noch eine Extra-Komponente?
Re: Mehrere Tage in TCalendar hervorheben
Nein. Schreibe einen Event-Handler für OnGetMonthInfo und rufe dort die Methode BoldDays auf, der du die fett darzustellenden Monate übergibst. Diese Methode codiert diese Monate in das Bit-Array MonthBoldInfo, das von dem Event-Handler benötigt wird. Der aktuelle Monat wird direkt als Parameter übergeben, das Jahr musst du dir aus dem aktuell eingestellten Datum (TMonthCalendar(Sender).Date) selbst ableiten, z.B. mit DecodeDate.
Re: Mehrere Tage in TCalendar hervorheben
Oh - ich merke gerade, bei Lazarus ist das ja anders als bei Delphi... Sorry.
- jwdietrich
- Beiträge: 173
- Registriert: Mo 20. Okt 2008, 20:50
- OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
- CPU-Target: PowerPC, Intel, ARM
- Wohnort: Hattingen, NRW
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
Naja, Lazarus ist ja auch kein Delphi-Klon. Trotzdem vielen Dank für die Bemühungen!wp_xyz hat geschrieben:Oh - ich merke gerade, bei Lazarus ist das ja anders als bei Delphi... Sorry.
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
In Visual Planit gibts ne Kalendar Komponente die komplett selbstgezeichnet ist, da lässt sich das sicher unterbringen.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
- jwdietrich
- Beiträge: 173
- Registriert: Mo 20. Okt 2008, 20:50
- OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
- CPU-Target: PowerPC, Intel, ARM
- Wohnort: Hattingen, NRW
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
Danke für den Tip, das sieht interessant, aber auch ein wenig unhandlich aus. Ich werde es mal ausprobieren, aber wenn die Komponente zu ressourcenintensiv ist, werde ich wohl eher selbst einen flexiblen Kalender schreiben.Christian hat geschrieben:In Visual Planit gibts ne Kalendar Komponente die komplett selbstgezeichnet ist, da lässt sich das sicher unterbringen.
- m.fuchs
- Lazarusforum e. V.
- Beiträge: 2822
- Registriert: Fr 22. Sep 2006, 19:32
- OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
- CPU-Target: x86, x64, arm
- Wohnort: Berlin
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
Wie muss denn die Hervorhebung aussehen? Ich habe da noch eine Komponente, mit der ein User eigentlich Tage in einem Jahr markieren kann. Aber man könnte sie durchaus auch nur für die Anzeige von markierten Tagen verwenden. Sieht dann so aus:
http://www.michael-fuchs.net/newsgroups ... ongrid.png
http://www.michael-fuchs.net/newsgroups ... ongrid.png
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Re: Mehrere Tage in TCalendar hervorheben
Im Package RX (http://lazarus-ccr.svn.sourceforge.net/ ... onents/rx/) gibt es ein TRxCalendarGrid, das von TCustomDrawGrid abgeleitet ist. Hier hat man - wie bei allen Grids - über das Ereignis OnPrepareCanvas Zugriff auf den Canvas, bevor eine Grid-Zelle gezeichnet wird, und kann so die Textfarbe etc. ändern.
-
- Beiträge: 958
- Registriert: Mo 11. Sep 2006, 22:56
Re: Mehrere Tage in TCalendar hervorheben
Beim Orpheus Port ist auch ein Kalender dabei
http://wiki.freepascal.org/OrphPort
damit könnte es evtl gehen
http://www.lazarus.freepascal.org/index ... ic=18007.0
http://wiki.freepascal.org/OrphPort
damit könnte es evtl gehen
http://www.lazarus.freepascal.org/index ... ic=18007.0
- jwdietrich
- Beiträge: 173
- Registriert: Mo 20. Okt 2008, 20:50
- OS, Lazarus, FPC: macOS 10.4-14.1, Windows 2000-11, Raspbian (L 3.7.0, FPC 3.2.2)
- CPU-Target: PowerPC, Intel, ARM
- Wohnort: Hattingen, NRW
- Kontaktdaten:
Re: Mehrere Tage in TCalendar hervorheben
Danke für die vielen Tips. Ich werde in den nächsten Tagen mal ein wenig experimentieren, welche der Optionen die beste ist.