Live-Ticker
 Community
menu Registrieren menu Mitglieder Login menu Chat menu Flirtsuche menu Forum menu Shop
 Schule & Uni
menu Referate
 Informationen
menu FAQs
 Statistik
Mitglieder397.326
Neue User0
Männer195.777
Frauen194.718
Online3
Referate12.458
SMS-User59.003
Forenbeiträge3.080.539
 Neue Mitglieder
  • Profilbild von elif05

    Weiblich elif05
    Alter: 18 Jahre
    Profil

  • Profilbild von teamsia8

    Weiblich teamsia8
    Alter: 18 Jahre
    Profil

  • Profilbild von teamsia

    Weiblich teamsia
    Alter: 16 Jahre
    Profil

  • Profilbild von philippa0701

    Weiblich philippa0701
    Alter: 30 Jahre
    Profil

  • Profilbild von melli0201

    Weiblich melli0201
    Alter: 16 Jahre
    Profil

  • Profilbild von Ottilisl

    Weiblich Ottilisl
    Alter: 13 Jahre
    Profil

  • Profilbild von Dyna6

    Maennlich Dyna6
    Alter: 16 Jahre
    Profil

  • Profilbild von jonic12

    Maennlich jonic12
    Alter: 14 Jahre
    Profil

  • Profilbild von leuchtendleer

    Weiblich leuchtendleer
    Alter: 16 Jahre
    Profil

  • Profilbild von Tessler

    Maennlich Tessler
    Alter: 30 Jahre
    Profil

     
Foren
Computer & Internet
Forum durchsuchen:

 
Thema:

Delphi

(494x gelesen)

Seiten: 1

Du mußt dich registrieren, bevor Du einen Beitrag bzw. eine Antwort erstellen kannst.

Beitrag von Lesimir

24.08.2008 01:51:58

Lesimir

Profilbild von Lesimir ...

Themenstarter
Lesimir hat das Thema eröffnet...

Hi
hat irgendwer zufällig mal delphi programmiert und erinnert sich oder hat sogar aktuell auf dem schirm, wie man folgendes problem lösen könnte:
Ich möchte in einem richedit objekt einen bestimmten, sich wiederholenden Textteil suchen und diesen dann so farbig markieren, dass die Formatierung im rtf dokument sichtbar ist. (Mir ist ziemlich egal, wie diese Markierung aussieht. Also von mir aus kann es auch einfach kursiv gedruckt oder fett sein oder sonst was).

Sprich: ich habe einen Text in dem immer wieder das Wort "Hund" vorkommt, und will jetzt, dass das Programm noch während ich tippe oder auch nach Abschluß durch einen extra button jedes vorkommen des wortes hund im Text sucht und das dann da farbig markiert.





Alternative:
Ich ersetze innerhalb des Textes durch eine Funktion schon jedes "X" durch dieses vorbestimmtes Wort - ich könnte also auch an dieser Stelle einfach formatierten Text einfügen, wie geht das?





Danke!

Profil | Livenachricht | SMS senden | Gästebuch | Nachricht | Bildergalerie


Beitrag von cyberion

24.08.2008 10:26:20

cyberion

Profilbild von cyberion ...

procedure MarkThisWord(RE: TRichEdit; TheWord: String; Color: TColor; Style:
TFontStyles);
var
i, CharPos, noChars: Integer;
begin
CharPos := 0;
noChars := 0;
for i := 0 to Pred(RE.Lines.Count) do
noChars := noChars + Length(RE.Lines[i]);
CharPos := RE.FindText(TheWord, CharPos, noChars, [stWholeWord]);
RE.SelStart := CharPos;
RE.SelLength := Length(TheWord);
RE.SelAttributes.Color := Color;
RE.SelAttributes.Style := Style;
end;

procedure MarkAllWords(RE: TRichEdit; TheWord: String; Color: TColor; Style:
TFontStyles);
var
i, CharPos, CharPos2, noChars: Integer;
begin
CharPos := 0;
noChars := 0;
for i := 0 to Pred(RE.Lines.Count) do
noChars := noChars + Length(RE.Lines[i]);
repeat
CharPos2 := RE.FindText(TheWord, CharPos, noChars, [stWholeWord]);
CharPos := CharPos2+1;
RE.SelStart := CharPos2;
RE.SelLength := Length(TheWord);
RE.SelAttributes.Color := Color;
RE.SelAttributes.Style := Style;
until charpos = 0;
end;

Syntax:

procedure TForm1.Button1Click(Sender: TObject);
begin
MarkThisWord(RichEdit1, 'the', clRed, [fsBold]);
MarkAllWords(RichEdit1, 'to', clTeal, [fsItalic, fsBold]);
end;

Profil | Livenachricht | SMS senden | Gästebuch | Nachricht | Bildergalerie


Seiten: 1

Du mußt dich registrieren, bevor Du einen Beitrag bzw. eine Antwort erstellen kannst.

Weitere interessante Beiträge aus dem Forum:
Delphi Druckabfrage
delphi .exe
Delphi-Probierversion
Hilfe bei Delphi 6!!!
delphi ordner-größe auslesen


Dein Live Messenger LiveMessenger

Diese Funktion ist nur für Mitglieder verfügbar.

Anmelden | Login

Keine neue Nachricht
Jetzt Gratis bei Pausenhof.de registrieren...

3 Mitglieder online