Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Zeichnen in TMemo anpassen (https://www.delphipraxis.net/102467-zeichnen-tmemo-anpassen.html)

mjenke 29. Okt 2007 14:27


Zeichnen in TMemo anpassen
 
Hallo, alle miteinander,

kann mir jemand helfen, wenn es darum geht, das Zeichnen einer TMemo-Komponente anzupassen. Ich würde mir gerne eine Komponente ableiten, in der ich das Zeichnen des eigentlichen Textes meinen Wünschen anpasse. In ComboBoxen und Listboxen ist das kein Problem, da kann ich das DrawItem anpacken.

Wie aber sieht es in einer TMemo-Komponente aus? Ich habe lange gesucht und nicht gefunden, wo der eigentliche Text tatsächlich in der Komponente gezeichnet wird. Genau hier möchte ich nämlich eingreifen und mal herumspielen. Beispielsweise Xml-Tags in einem Tags farbig anders gestalten etc.

Wäre super, wenn Ihr mir helfen könntet.

:-D
Matthias

SnuffMaster23 29. Okt 2007 14:44

Re: Zeichnen in TMemo anpassen
 
Wieso nimmst du kein TRichEdit bzw ein neueres wie z.B. TJVRichEdit?
Damit solltest du eigentlich alles im den Griff kriegen.

Apollonius 29. Okt 2007 14:48

Re: Zeichnen in TMemo anpassen
 
Und wenn du wirklich alles selbst zeichnen willst, kannst du dir auch einfach eine eigene Komponente von TGraphicControl oder TCustomControl ableiten und Paint überschreiben.

mjenke 29. Okt 2007 14:50

Re: Zeichnen in TMemo anpassen
 
Das TMemo bietet mir ein paar Einschränkungen, die ich in meinem Fall für sinnvoll erachte. Der Benutzer selbst soll beispielsweise gar keine Möglichkeit haben, den Text in irgendeiner Form zu gestalten. Es geht nur darum, bestimmte Dinge hervorzuheben.

Außerdem treibt mich die Neugierde.
:-D

Deep-Sea 29. Okt 2007 16:02

Re: Zeichnen in TMemo anpassen
 
Zitat:

Zitat von mjenke
[...] Der Benutzer selbst soll beispielsweise gar keine Möglichkeit haben, den Text in irgendeiner Form zu gestalten. Es geht nur darum, bestimmte Dinge hervorzuheben.

Schau dir doch mal "TJvHTLabel" an. Klingt so, als wäre das genau das, was du sucht :-D

(PS: Ein Memo ist aber gerade dafür gedacht, dass der Benutzer darin etwas ändert. Wenn du wie vorgeschlagen selber Zeichen würdest, ginge das jedoch nicht)

mkinzler 29. Okt 2007 16:13

Re: Zeichnen in TMemo anpassen
 
Oder ein TRichEdit

shmia 29. Okt 2007 16:50

Re: Zeichnen in TMemo anpassen
 
Zitat:

Zitat von Deep-Sea
PS: Ein Memo ist aber gerade dafür gedacht, dass der Benutzer darin etwas ändert. Wenn du wie vorgeschlagen selber Zeichen würdest, ginge das jedoch nicht

Zusätzlich zu dem was Deep-Sea gesagt hat, ist ein TMemo eine Kapselung eines Windows Common Controls.
Deine Einflussmöglichkeiten sind daher sehr gering und das Zeichnen selbst kann du nicht ändern, da es nicht in der VCL sondern in Comctl32.dll & Co. stattfindet.

DerDan 29. Okt 2007 16:59

Re: Zeichnen in TMemo anpassen
 
Hallo

für solche Sachen ist SynMemo auch ganz nett!

http://SynEdit.SourceForge.net


ist so leicht zu verwenden wie ein TMemo und mit einem eigenen Higlighter kann man alles
hervorheben was man mag.

mfg

DerDan


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:08 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