Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wenn bestimmtes Wort in RichEdit dann Fett (https://www.delphipraxis.net/56592-wenn-bestimmtes-wort-richedit-dann-fett.html)

Christian18 8. Nov 2005 14:02


Wenn bestimmtes Wort in RichEdit dann Fett
 
Hallo,

ich habe mal eine Frage. Ich habe eine RichEdit Komponente auch meiner Form. Wenn ich in dieser RichEdit Komponente das Wort Programm stehen habe, oder das Wort Ende, dann sollen diese Wörter Fett gedruckt werden. Wie kann ich das machen. Außerdem soll noch wenn ich vor den Wort zwei // habe, dann soll das Wort auch noch Rot geschrieben werden. Wie kann ich das mit Delphi machen???

Mit freundlichen Grüßen

Christian18

glkgereon 8. Nov 2005 14:16

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
eigentlich ganz einfach...

Delphi-Quellcode:
P:=Pos('Programm',S);
while P>0 do
  begin
  RichEdit.SelStart:=P;
  RichEdit.SelLength:=Length('Programm');
  RichEdit.SelAttributes.Style:=[fsBold];
  P:=PosEx('Programm',S,P+1);
  end;
RichEdit.SelLength:=0;
wenn du nun die Statischen Teile ('Programm') in ein Array schreibst kannst du das alles in einer Schleife abarbeiten...

Edit:
Das "SelAttributes" kannst du natürlich auch in ein Array hauen....

chaosben 8. Nov 2005 14:20

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
... und falls du eine Art "Syntax-Highlighting" brauchst, guck mal bei den Jedis. Die haben da schon was richtig feines gebaut(HLEditor). Falls du aber so ein Ding selbst machen willst, dann lass dich nicht stören. :)

glkgereon 8. Nov 2005 14:23

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
Zitat:

Zitat von chaosben
... und falls du eine Art "Syntax-Highlighting" brauchst, guck mal bei den Jedis. Die haben da schon was richtig feines gebaut(HLEditor). Falls du aber so ein Ding selbst machen willst, dann lass dich nicht stören. :)

Das stimmt.

Falls du wirklich ein vernünftiges Syntax-Highlighting bauen willst, bist du mit SynEdit oder der Jedi Lösung wesentlich besser beraten.

Das ist schnell :)
ich habe mich da mit yankee vor längerer Zeit auch mal dran versucht...und das war laannggssaamm....

bei SynEdit musst du die Komponente nur entsprechend einstellen und fertig ;)

Christian18 8. Nov 2005 14:25

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
wo bekomme ich diese jedi komponennte her???

-NIP- 8. Nov 2005 14:34

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
JEDI ist unter anderem eine Komponentensammlung ;).

Bei Delphi-Source gibt es Informationen zu ihr
und hier kannst du sie downloaden.

Christian18 8. Nov 2005 14:48

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
Hallo,

ich habe mir das mal angeschaut. ich möchte doch gerne die obere variante machen. der beispiel code funktioniert bei mir aber nicht. es kommt kein fehler oder so. aber es passiert auch nicht. das wort programm wird nicht fett geschrieben.

MFG Christian18

fkerber 8. Nov 2005 14:50

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
Hi!

Wann rufst du obigen Code auf?

Ciao Frederic

Lannes 8. Nov 2005 14:58

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
Hallo,

eventuell liegt es daran:
Programm <> programm :arrow:
Delphi-Quellcode:
Pos(Uppercase('Programm'),Uppercase('Hallo, da ist ein programm'))

glkgereon 8. Nov 2005 18:28

Re: Wenn bestimmtes Wort in RichEdit dann Fett
 
auch wenn es nur so ausm kopf war...sollte eigentlich funktionieren... :gruebel:

wahrscheinlich liegst wirklich am fehlenden UpperCase


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