Autor Beitrag
MSmart
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mo 03.03.03 08:00 
Hallo!

Ich bin langsam am verzweifeln auf der Suche nach einer Lösung des folgenden Problems: Ich schreibe ein kleines Rechnungsprogramm mit Druckfunktion. Nach Eingabe aller Rechnungsdaten wird in einer RichEdit-Kompnente eine Dokumentenvorschau erstellt, die die eingebenen Daten "hübsch" formatiert ausgibt. Bis kurz vor der Artikelübersicht auch kein Problem (also nach Adresskopf etc).

Die Artikelübersicht hat die für eine Rechnung üblichen Überschriften.
Pos. | Artikel | Einzelpreis | Menge | Gesamtpreis
Um nun die einzelnen Positionen formatiert untereinander aufzulisten, habe ich bisher mit TabStops gearbeitet, was optisch auch schon sehr gut funktionierte. Nur sollen Einzelpreis, Menge und Gesamtpreis rechtsbündig untereinander stehen (da zwei Preise wie 1,50 und 430,00 ja nur rechtsbündig untereinander vernünftig im Ausdruck aussehen!), daher bin ich auf die Idee mit den Tabellen gekommen. Dynamisch eine Tabelle erstellen war mir zu kompliziert, also habe ich unter Word eine Vorlage mit einer formatierten Tabelle erstellt (die zur Laufzeit dann bearbeitet werden soll) und als RTF-Datei abgespeichert.

Die Formatierung in einer Tabellenreihe ist also:
1. + 2. Zelle linksbündig und 3. + 4. + 5. Zelle rechtsbündig. Wenn ich diese Datei nun zum Test ins Windows-Wordpad lade (Wordpad ist ja eigentlich auch nur ne getunte RichEdit-Komponente!?), bleibt die Formatierung der Tebelle auch erhalten. Lade ich diese Datei nun in die RichEdit-Komponente des Programms (und hier kommt endlich das eigentliche Problem zum Ausdruck :wink: ) geht die Ausrichtung in den Tabellenzellen verloren (wird alles linksbündig).

Ich hoffe, dass ich das Problem einigermassen gut rüberbringen konnte. Ich möchte also innerhalb einer Tabellenreihe mit mehreren Zellen mal linksbündig mal rechtsbündig Text einfügen! Ist das überhaupt mit der Standard RichEdit-Komponente zu realisieren oder muss ich einen ganz anderen Ansatz wählen?

Auf hoffentlich hilfreiche Antworten! :)

MfG MSmart

Moderiert von user profile iconTino: Absätze entfernt.
MSCH
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1448
Erhaltene Danke: 3

W7 64
XE2, SQL, DevExpress, DevArt, Oracle, SQLServer
BeitragVerfasst: Di 04.03.03 21:04 
Titel: HI
Ich glaube in irgentwelchen Delphi-Tuts gelesen zu haben ,wie man die RichEdit Comp. dazu bringt, verschiedene Absatzformatierungen anzunehmen. Ist IMHO aber recht aufwändig.
Versuchs doch via HTML ! Das ist relativ einfach, und für die Vorschau resp. Druck gibts eine fertige TWebBrowser Komponente. Noch Feiner ginge es dann mit xsl/xml richtig schön Medienneutral oder ganz simple mit den Quickreport-Kompos.
Grüße
MSCH
MSmart Threadstarter
Hält's aus hier
Beiträge: 2



BeitragVerfasst: Mi 05.03.03 17:36 
Titel: Danke!
Hallo!
Danke für die Tipps. Werde mir mal ein paar Report-Komponenten ansehen. Damit habe ich mich bisher nicht wirklich beschäftigt. Habe die Sache jetzt erstmal mit fester Schriftbreite gelöst (Courier New). Schaue mir einfach die Längen der Zahlenwerte an und fülle dann mit Leerzeichen auf. War bei dem vorangeschrittenen Stadium des Programms die zeitsparendste Lösung.
Mit HTML hatte ich mir das auch schonmal überlegt, aber da fehlt mir die Editierbarkeit nach Erstellung des Dokuments innerhalb des Programms. Ausserdem, wie kann ich denn über die TWebBrowser Komponente audrucken und beim Ausdruck den Header und Footer bestimmen??

Danke nochmals und Gruss
MSmart