AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Formatierter DB-Text

Ein Thema von d.adams · begonnen am 22. Apr 2024 · letzter Beitrag vom 28. Apr 2024
Antwort Antwort
d.adams

Registriert seit: 2. Apr 2023
22 Beiträge
 
#1

Formatierter DB-Text

  Alt 22. Apr 2024, 18:49
Hallo,

ich möchte eine ältere Anwendung erweitern. Erstellt wurde sie unter Delphi7 und ich muss das auch weiter nutzen.

Ich muss in der Oberfläche ein DB-bezogenes Memo (DBRichEdit) anzeigen, dass Textformatierungen zulässt. ALso Fettdruck, Aufzählungszeichen und idealerweise auch das Einfügen von Bildern per Copy&PAste. Vergleichbar in Etwa wie ein E-Mail-Body in einem Mailprogramm.

Am liebsten würde ich eine (freie) Komponenente benutzen die auch schon die Formatierungsoptionen (Schalter) mit sich bringt.
Kennt jemand eine solche KOmponente und kann mir etwas empfehlen, oder gibt es evtl. eine schnelle andere Möglichkeit mit Bordmitteln von D7?

Gruß

D.Adams
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Formatierter DB-Text

  Alt 22. Apr 2024, 19:24
Hast du dir einmal die RichEdit Demo angeschaut, die bei Delphi 7 dabei ist? Vielleicht reicht das ja schon...
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Papaschlumpf73

Registriert seit: 3. Mär 2014
Ort: Berlin
435 Beiträge
 
Delphi 12 Athens
 
#3

AW: Formatierter DB-Text

  Alt 23. Apr 2024, 09:00
Keine Ahnung, ob das mit aktuellen Delphi-Versionen geht. Bei Delphi 7 kann TRichEdit und TDBRichEdit jedoch keine Bilder anzeigen.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#4

AW: Formatierter DB-Text

  Alt 23. Apr 2024, 10:36
Am Delphi selbst liegt es nicht, außer daran welche API-Version das Delphi verwendet und was Windows dort bietet.
https://learn.microsoft.com/de-de/wi...-edit-controls
oder vielleicht welches GrafikFormat und wie es eingebunden ist.
https://stackoverflow.com/questions/...-show-pictures


Delphi-Quellcode:
const
  MSFTEDIT_CLASS = 'RICHEDIT50W'; { Richedit 4.1 }
  RICHEDIT_CLASSA = 'RichEdit20A'; { Richedit2.0 Window Class. }
  RICHEDIT_CLASSW = 'RichEdit20W'; { Richedit2.0 Window Class. }
  RICHEDIT_CLASS10A = 'RICHEDIT'; { Richedit 1.0 }
Bis Delphi 2007 wurde RICHEDIT_CLASSA genutzt, also v2.0-ANSI,
ab Delphi 2009 RICHEDIT_CLASSW und somit v2.0-Unicode,
sowie im Delphi 11 wird die MSFTEDIT_CLASS verwendet, also v4.1,
und Delphi 7 weiß ich jetzt nicht, aber kannst du ja nachsehn (vermute aber mal auch schon die v2),
siehe Units RichEdit und ComCtrls, bzw. Winapi.RichEdit und Vcl.ComCtrls:

Delphi XE:
Delphi-Quellcode:
procedure TCustomRichEdit.CreateParams(var Params: TCreateParams);
const
...
{$IF NOT DEFINED(UNICODE)}
  RichEditClassName = 'RICHEDIT20A';
{$ELSE}
  RichEditClassName = 'RICHEDIT20W';
{$IFEND}
...
  inherited CreateParams(Params);
  CreateSubClass(Params, RichEditClassName);
Delphi 11:
Delphi-Quellcode:
procedure TCustomRichEdit.CreateParams(var Params: TCreateParams);
  ...
  inherited CreateParams(Params);
  CreateSubClass(Params, MSFTEDIT_CLASS);
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
d.adams

Registriert seit: 2. Apr 2023
22 Beiträge
 
#5

AW: Formatierter DB-Text

  Alt 23. Apr 2024, 13:39
Hast du dir einmal die RichEdit Demo angeschaut, die bei Delphi 7 dabei ist? Vielleicht reicht das ja schon...
Die habe ich leider nicht zur Verfügung...




Am Delphi selbst liegt es nicht, außer daran welche API-Version das Delphi verwendet und was Windows dort bietet.
https://learn.microsoft.com/de-de/wi...-edit-controls
oder vielleicht welches GrafikFormat und wie es eingebunden ist.
https://stackoverflow.com/questions/...-show-pictures


Delphi-Quellcode:
const
  MSFTEDIT_CLASS = 'RICHEDIT50W'; { Richedit 4.1 }
  RICHEDIT_CLASSA = 'RichEdit20A'; { Richedit2.0 Window Class. }
  RICHEDIT_CLASSW = 'RichEdit20W'; { Richedit2.0 Window Class. }
  RICHEDIT_CLASS10A = 'RICHEDIT'; { Richedit 1.0 }
Bis Delphi 2007 wurde RICHEDIT_CLASSA genutzt, also v2.0-ANSI,
ab Delphi 2009 RICHEDIT_CLASSW und somit v2.0-Unicode,
sowie im Delphi 11 wird die MSFTEDIT_CLASS verwendet, also v4.1,
und Delphi 7 weiß ich jetzt nicht, aber kannst du ja nachsehn (vermute aber mal auch schon die v2),
siehe Units RichEdit und ComCtrls, bzw. Winapi.RichEdit und Vcl.ComCtrls:

Delphi XE:
Delphi-Quellcode:
procedure TCustomRichEdit.CreateParams(var Params: TCreateParams);
const
...
{$IF NOT DEFINED(UNICODE)}
  RichEditClassName = 'RICHEDIT20A';
{$ELSE}
  RichEditClassName = 'RICHEDIT20W';
{$IFEND}
...
  inherited CreateParams(Params);
  CreateSubClass(Params, RichEditClassName);
Delphi 11:
Delphi-Quellcode:
procedure TCustomRichEdit.CreateParams(var Params: TCreateParams);
  ...
  inherited CreateParams(Params);
  CreateSubClass(Params, MSFTEDIT_CLASS);
Hast du dir einmal die RichEdit Demo angeschaut, die bei Delphi 7 dabei ist? Vielleicht reicht das ja schon...

Boah.... das musst du mir bitte mal übersetzen? Was wird mit dem Code erreicht?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.063 Beiträge
 
Delphi 12 Athens
 
#6

AW: Formatierter DB-Text

  Alt 23. Apr 2024, 14:18
D7 ohne RTL/VCL-Quellcodes?


Lagen bei D7 die Demos nicht unverschlüsselt im Installationsmedium (ISO) ?

Wenn man die Demos nicht mit Delphi installiert hat, dann kann man die eventuell auch online nachsehn.
früher auf sourceforge.net und jetzt eben github
https://github.com/Embarcadero/RADStudio11Demos
https://github.com/Embarcadero/RADStudio12Demos



Delphi kapselt in der VCL oftmals entsprechende Controls vom Windows.
Buttons, Edits, CheckBox oder eben das RichEdit (nur beim TLabel und TImage nicht, da wird selbstgemalt ... PS: TStaticText ist das echte "Label" vom Windows)

Intern dann MSDN-Library durchsuchenCreateWindow, mit der entsprechenden "Klasse", entsteht dabei das jeweilige Control
https://learn.microsoft.com/de-de/wi...-edit-controls

Und da kommt es dann darauf an, welche System-DLL, bzw. welche FensterKlasse genutzt wird ... gibt für viele Controls mehrere Versionen, welche sich dann auch im Funktionsumfang unterscheiden.
https://learn.microsoft.com/de-de/wi...s-of-rich-edit

Bei den Standard-Controls wie Edit, Button oder ComboBox, hängt es auch davon ab, ob man den "XP-Style" aktiv hat, also ob die NewCommonControls V6 (und neuer) via Manifest aktiviert sind, wo Windows entscheidet welche DLL-Version geladen wird.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu (23. Apr 2024 um 14:26 Uhr)
  Mit Zitat antworten Zitat
d.adams

Registriert seit: 2. Apr 2023
22 Beiträge
 
#7

AW: Formatierter DB-Text

  Alt 28. Apr 2024, 18:39
D7 ohne RTL/VCL-Quellcodes?


Lagen bei D7 die Demos nicht unverschlüsselt im Installationsmedium (ISO) ?.
Ich habe "nur" eine virtuelle Maschine mit der fertigen Installation. Die Demos sind nicht darauf.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz