![]() |
DTemplate - ein Templatesystem für Delphi
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo Leutz!
Endlich habe ich mich mal dazu durchgerungen euch eine Klasse von mir zu überreichen - und das auch noch an Weihnachten :mrgreen: Ok... aber um was geht es? DTemplate ist - wie der Titel schon sagt - ein Templatesystem für Delphi. Ähnlich wie solche, wie sie für PHP existieren. Der Grund ein solches System zu entwickeln war einfach der, dass ich eine einfache Möglichkeit suchte HTML-Dateien dynamisch nach einem bestimmten Muster zu erstellen, um dadurch Datenmengen an einen TWebBrowser zum Drucken weiterzuleiten. Zudem habe ich keine freie Komponente/Klasse für Delphi gefunden... :roll: Das angehängte Zip-Archiv enthält - die DTemplate Unit in der Version 1.0 - eine ReadMe (bzw. Dokumentation) im HTML-Format - eine (primitive) Demo Anwendung - und den Source dazu (Achtung: mit Delphi 2006 erstellt!) In der Demo werden drei (eigentlich) aufeinander aufbauende Beispiele zur Verwendung von DTemplate gezeigt. Das Ergebnis der Templateerstellung wird einerseits in einen TWebBrowser (über eine temporäre Datei im Verzeichnis der Exe (Schreibrechte!!)) und andererseits in eine Memo ausgegeben. Die Templates selbst sind hardcoded in 4 ReadOnly Memos untergebracht, die über ein PageControl erreichbar sind. Die DTemplate Klasse verwendet die TRegExpr Klasse, welche ![]() Ich freue mich auf euer Feedback :zwinker: Edit: Neues Archiv mit ausführlicher ReadMe/Doku online gestellt. |
Re: DTemplate - ein Templatesystem für Delphi
Moin JamesTKirk!
ich wollte in nächster Zukunft nach einer solchen Klasse suchen, bzw. sie selbst entwickeln. Gefällt mir gut, die Funktionalität, auch dass man z.B. so flexibel Tabellen erstellen kann. Die genaue Handhabe muss ich mir allerdings nochmal genauer zu Gemüte führen - so ganz simple ist es ja nicht... Vielen Dank, dass Du's zur Verfügung gestellt hast. Falls ich den Code in meinem Projekt verwende oder weiterentwickle, gebe ich dir natürlich Nachricht! Gruß Pfoto |
Re: DTemplate - ein Templatesystem für Delphi
Von Templates hab ich nicht so richtig Ahnung (Ich find sie toll, würde sie benutzen, weiss aber nicht genau, was das ist :oops: ), aaaber:
Ist es nicht so, das ein 'Templatesystem' ein einfaches StrReplace ist? Im Endeffekt ersetzt man bestimmte Platzhalter in einem Text durch konkrete Werte, oder? Das Tolle daran ist doch der Input, also das Template selbst. Stimmt das, oder hab ich was entscheidendes übersehen? |
Re: DTemplate - ein Templatesystem für Delphi
Sers!
@Pfoto: Hauptziel für mich war es ja, das Ganze so flexibel wie ein PHP Template System zu gestalten... und das denke ich, ist mir gelungen :mrgreen: (Eigenlob stinkt :roll: ) Jetzt wo du's sagst: Ich müsste mal noch eine Bedienungsanleitung bzw. Dokumentation schreiben... Upsi :oops: (wusste doch, dass ich was vergessen hab :zwinker: ) @alzaimar: Einerseits hast du Recht: im Grunde ist ein Templatesystem etwas, das auf StrReplace aufbaut. Das gilt uneingeschränkt allerdings nur für "primitive" Templates. Schau dir z.B. mal die Posts in der DP an. In den Templates ist hinterlegt wie so ein Post ganz allgemein ausschaut: links Infos über den Poster, rechts dann der Text. Alles mit Platzhaltern versehen. Das ergibt somit einen Block. Durch das Templatesystem und eigenen Code kannst du jetzt eine beliebige Anzahl solcher Blöcke - mit individuellen Werten (Poster A und Text A bzw Poster B und Text B) versehen - ausgeben, um so auf gemütliche Art und Weise einen ganzen Thread zu erhalten. Zudem sind Templates dazu da, das Design vom eigentlichen Code so gut es geht zu trennen... Hoffe es ist etwas klarer geworden :mrgreen: |
Re: DTemplate - ein Templatesystem für Delphi
So... ich habe nun endlich die versprochene Dokumentation in das Archiv mit reingepackt. Sie heißt zwar "ReadMe", aber dem Inhalt nach hätte ich sie eher "Doku" nennen sollen ;)
Ich hoffe, dass dadurch die Funktionsweise, als auch Sinn und Zweck des Ganzen ersichtlicher werden. Feedback, Bug-Berichte und Co sind natürlich immer noch willkommen :mrgreen: Edit: Neues Archiv siehe 1. Beitrag (es lebe meine Verplantheit ;) ) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz