![]() |
Datenbank: Paradox • Version: 7 • Zugriff über: BDE
Format eines DBRichEdit(Textes) speichern und laden
Hi zusammen,
ich hab ein DBRichEdit mit einem (Paradox-Feldtyp F) formatierten Memo verbunden. Im Quellcode schreibe ich folgendes:
Delphi-Quellcode:
Der markierte Text wird auch in fett dann gezeigt. Nur nach dem Speichern und wieder Laden des Textes in das DBRichEdit ist der Text wieder nicht formatiert. Kann mir jemand helfen und mir sagen, was ich falsch mache oder wie ich sowas lösen kannn?
procedure TForm1.Button1Click(Sender: TObject);
begin with DBRichEdit1.SelAttributes do If Style = [fsBold] then Style := [] else Style := [fsBold]; end; Ich danke Euch für jeden Tip.. beanbear6 |
AW: Format eines DBRichEdit(Textes) speichern und laden
Wahrscheinlich wirst du RTF nur in einem BLOB-Feld speichern können.
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Zwar habe ich nie mit Paradox oder der BDE gearbeitet, doch kann ich dir sagen, daß man RichEdit-Inhalte am besten in einem binären Feld speichert. Das bedeutet, man wählt kein Feld, das Text aufnimmt, sondern – in der Sprache modernerer Datenbanken – ein binäres Blobfeld. Dann ist nämlich garantiert, daß der Stream der DBRichEdit-Komponente unverändert im Blobfeld ankommt und ebenso unverändert daraus wieder gelesen werden kann. Bei Datenbank-Textfeldern (Memo, VarChar) besteht dagegen die Gefahr, daß Steuerzeichen, die ja im RichText vorkommen, falsch interpretiert werden.
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Naja die RTF-Rohdaten sollte man durchaus ineinem Varchar/Char/Text/Memo-Feld speichern können:
Code:
Da wird nicht gezaubert und es ist mit dem ordinären Notepad lesbar. man muß sich nur durch die verschiedenen Begrifflichkeiten durchfinden, um zu erreichen was man will. Irgendwo sollte jede RichText-Komponente auch den Zugriff auf den "SourceCode" ermöglichen, und der kann ganz problemlos als Text gespeichert werden.
{\rtf1\ansi\ansicpg1252\uc1 \deff0\deflang1033\deflangfe1031{\fonttbl{\f0\froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f2\fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New;}....
Gruß K-H |
AW: Format eines DBRichEdit(Textes) speichern und laden
Es ist nur die Frage, was der DBRichText in die Tabelle ablegt. Es scheint so, ob nur der reine Text gespeichert wird.
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Zitat:
Zudem mache vermutlich nicht nur ich von der Möglichkeit Gebrauch, in RichEdit-Komponenten auch Grafiken zu speichern, was die Wahl eines Binärfeldes als zwingend erscheinen läßt. Bei Memo-Komponenten wie TDBMemo z.B. genügt ein Textfeld, da gibts keine Formatierungen und man kann da auch keine Bilder einbinden. Wenn du mal die Forensuche bemühst, wirst du etlichen Usern begegnen, die große Schwierigkeiten dabei hatten, RTF-Inhalte in Textfeldern zu speichern, diese Probleme aber nicht mehr auftraten, nachdem sie ein Binärfeld gewählt hatten. Deshalb ist das immer auch mein erster Ratschlag bei diesem speziellen Problem. Zitat:
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Hallo zusammen,
gleich mal vielen Dank für Eure Mühe. Wie aber versteh ich das mit dem Blob-Feld? Is dan für z.B. Paradox ein OLE-Feld? Ich hab da leider viel zu wenig Erfahrung damit. Ich weis schon, dass man das Ganze auch als .rtf als Datei ablegen könnte, aber ich brauch das unbedingt in einer Datenbank. Bitte helft mir mit diesem Blobfeld... Vielen Dank an alle!! |
AW: Format eines DBRichEdit(Textes) speichern und laden
Welche Blob-Typen gibt es denn überhaupt in Paradox? Soweit ich
![]() Womit bearbeitest du eigentlich deine Tabellen-Strukturen in deiner Paradox-Datenbank; welchen Datenbank-Manager setzt du ein? Hier im Forum ist auch einiges zu diesem Thema zu finden: |
AW: Format eines DBRichEdit(Textes) speichern und laden
Hatte vor kurzen ein ähnliches Problem Perlsau:thumb: hatte
mir geholfen Binär Blob ist die Antwort. |
AW: Format eines DBRichEdit(Textes) speichern und laden
Binär muß nicht unbedingt sein, denn die Prüfung geht nur auf
![]() TStringField oder PlainText=True -> Text TBlobField/TMemoField und PlainText=False -> RichText |
AW: Format eines DBRichEdit(Textes) speichern und laden
Hallo,
ich hab das nunmal mit DBRichEdit und nem formatierten Memo (Paradox5) versucht. Ich kann den Text bei Klick formatieren, aber beim wieder laden is die formatierung weg... Was mach ich falsch?
Delphi-Quellcode:
Gruß beanbear6
procedure TForm1.Button1Click(Sender: TObject);
begin with DBRichEdit1.SelAttributes do If Style = [fsBold] then Style := [] else Style := [fsBold]; end; |
AW: Format eines DBRichEdit(Textes) speichern und laden
Hast Du evtl. PlainText des RichEdits auf true gesetzt?
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Hi,
nein, steht auf false... hm... :cry: Gruß beanbear6 |
AW: Format eines DBRichEdit(Textes) speichern und laden
Zitat:
Abgesehen davon verwende ich niemals TDBRichEdit sondern immer TRichEdit mit LoadFromStream bzw. SaveToStream. Damit weiß man(n) was man hat und tut :) |
AW: Format eines DBRichEdit(Textes) speichern und laden
Zitat:
Mach dir also nicht das Leben unnötig schwer mit veralteter Software, denn wie du siehst, hält dich das am Ende nur unnötig auf und macht deine Mühen letztlich unproduktiv. Wie immer empfehle ich an dieser Stelle ![]() ![]() ![]() Zitat:
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Zitat:
|
AW: Format eines DBRichEdit(Textes) speichern und laden
Ich kann Perlsau nur zustimmen.
Habe vor langer Zeit von BDE auf InterBase und dann auf FireBird umgestellt, nie gereut und nie zurückgeschaut. Für die Bearbeitung der RTF, die in der Datenbank gespeichert werden, nutze ich wpTools, kostet zwar etwas aber andere Programmierer wollen ja auch leben und es geht damit fast alles, was das Anwender-Herz begehrt. Spell, Kopf- Fußzeilen, Tabellen, Grafiken, Platzhalter für Mailmerge usw. Die Logos speichere ich allerdings nicht in der DB sondern nur den Link auf die Datei mit dem jeweiligen Logo. |
AW: Format eines DBRichEdit(Textes) speichern und laden
Hi an alle...
vielen Dank für Eure Tips! Ich werd nun mal von dieser (ich mag sie ja selber nicht) BDE weggehn und mit FireBird versuchen... Vielen Dank nochmal an alle Helfer! :-) Gruß beanbear |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:15 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