![]() |
Datenbank: Paradox • Version: 9 • Zugriff über: Query
formatiertes Memo auslesen
Aloha :hi:
Ich möchte gerne eine Spalte aus der Tabelle auslesen und in ein Richedit schreiben. Die Spalte ist vom Typ "formatiertes Memo". So einfach, wie ich mir das dachte gehts anscheinend doch nicht. Wenn ich es auf diesem Weg mache:
Delphi-Quellcode:
bekomme ich die Fehlermldung "Fehler beim Einfügen einer Zeile im RichEdit"
RichEdit.Lines.Add(Query.FieldByName('Kommentar').AsString)
bei dieser Version
Delphi-Quellcode:
Wird im RichEdit einfach nur ein "[]" eingefügt. :|
RichEdit.Text:= Query.FieldByName('Kommentar').Astring
Hab ich da noch irgendwas vergessen oder einfach nur einen Denkfehler? :gruebel: |
Re: formatiertes Memo auslesen
|
Re: formatiertes Memo auslesen
Müssten eigentlich auch Blobs sein. Schau dir mal auf meiner Site die Tipps
![]() ![]() Grüße Mikhal |
Re: formatiertes Memo auslesen
Was willst du? Ein formatiertes Memo auslesen oder Text in ein RichEdit Steuerelement einfügen? Dein Thread-Titel widerspricht den Code, den du gepostet hast.
|
Re: formatiertes Memo auslesen
Das Datenbankfeld wird den Typ "formatiertes Memo" haben... ?!
|
Re: formatiertes Memo auslesen
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
@marabu, so funktioniert es leider nicht. Ich bekomme als Fehler immer noch dieses Viereck "[]" zurück :gruebel: |
Re: formatiertes Memo auslesen
Hi Simone,
probier das mal:
Delphi-Quellcode:
RichEdit.Text := Query.FieldByName('kommentar').Value;
|
Re: formatiertes Memo auslesen
@ruiguen leider ändert das auch nichts :|
Ich habe das mal als ShowMessage anzeigen lassen und das Fenster ist so groß, als wenn der Text drin stehen würde. Zu sehen ist aber nur das Viereck :gruebel: |
Re: formatiertes Memo auslesen
Hast du es mal mit Assign versucht, wie auf meiner Site gezeigt wird? Dort wird zwar ein Bild als Blob verwendet (Datentyp Image) aber auch Text und formated Text sind Blobs. Also sollte das Handling ähnlich sein.
Grüße Mikhal |
Re: formatiertes Memo auslesen
ungetestet:
Delphi-Quellcode:
entsprechend anpassen für Daten speichern.
procedure LoadText(Abfrage: TQuery; Rtf: TRichEdit; Feldname: String);
begin if (Abfrage.FindField(Feldname) As TBlobField).BlobSize > 0 then Rtf.Lines.Assign((Abfrage.FindField(Feldname) As TBlobField)); end; Mikhal Korrektur: Statt TRichText muss es TRichEdit heißen... |
Re: formatiertes Memo auslesen
Vielen Dank :kiss:
mit mikhals code funktioniert es |
Re: formatiertes Memo auslesen
Zitat:
Ich habe jetzt zu Testzwecken verschiedene Texte in die Tabellenspalte kopiert. Dabei habe ich festgestellt, wenn der Text sehr lang ist(also z.B. eine Geschichte), wird am Anfang etwas weggeschnitten und durch das "[]" ersetzt. Nur das Ende des Textes wird angezeigt. Kopiere ich jetzt einen kurzen Text(3 Zeilen oder so)in die Tabelle, wird nur das "[]" angezeigt :gruebel: Ich versteh das nicht, der Zusammenhang mit der Textlänge ist mir irgendwie nicht klar :| |
Re: formatiertes Memo auslesen
Hallo Simone,
Code zum Einlesen eines Formatted-Memo hast du bekommen, Code für die Zuweisung des RTF-Textes an ein RichEdit auch. Schau dir doch mal den RTF-Text an, den meine Funktion dir als String zurückgibt. Ich möchte wetten, dass da gar kein RTF-Text drin steht. Womit wurde das F-Feld beschrieben? Wenn du ein solches Feld mit Paradox beschreibst, dann hast du ein Problem, da Paradox ein Binär-Format schreibt, welches wohl auch nur Paradox wieder auswertet. Freundliche Grüße |
Re: formatiertes Memo auslesen
Zitat:
deine Funktion hatte ich auch schon ausprobiert, allerdings habe ich auch nur das "[]" zurückbekommen Ich danke dir :kiss: |
Re: formatiertes Memo auslesen
Übrigens:
Die einmalige oder auch wiederholte Übernahme der binären Paradox-Daten aus einem F-Feld kannst du auf der Paradox-Seite mit OPAL unterstützen. Dazu kannst du die Methoden writeToClipboard() oder writeToRTFFile() des Memo-Objekts benutzen. Eine Krücke - aber besser als Schicht im Schacht. Freundliche Grüße |
Re: formatiertes Memo auslesen
Anders als von Marabu beschrieben wird es wohl auch nicht richtig funktionieren, da Formatted Text ein proprietäres Format von Paradox ist, das nichts mit RTF gemein hat (siehe z.B.
![]() ![]() Das Verfahren das ich oben beschrieben habe, funktioniert bei mir auch nur einwandfrei mit Blobs vom Format Memo bzw. Image. Ich verwende dann auch nicht TDBMemo oder TDBImage. Grüße Mikhal |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:24 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 by Thomas Breitkreuz