Delphi-PRAXiS
Seite 1 von 2  1 2      

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 Prob mit RichEdit (allgemein) (https://www.delphipraxis.net/25908-prob-mit-richedit-allgemein.html)

darkstoneathome 14. Jul 2004 18:41


Prob mit RichEdit (allgemein)
 
hallo ich bin gerade dabei unsern onlinechat für registrierte user (www.at-LAN-tic.de) in ein programm einzubinden.
der chat basiert auf einer mysql datenbank.
(ich versuch mich mal halbwegs fernünfig auszudücken weil gestern hatte ich noch gar kein plan von mysql)
zumindest bekomm ich die daten schon in mein programm geladen bzw. in ein StrinGrid

primär versuch ich erstmal ein Readprogramm zu schreiben und danach darauf aufzubauen.

leider sieht es nicht schön aus wenn ich die daten dann von dem StrinGrid in ein RichEdit oder in eine Memobox lade.
Immerhin stehen bei andern chatprogrammen die Namen Fett oder in anderen Farben da und der eigentliche Text in normal schwarz ohne fett und ohne alles.
Wie bekomm ich das nun hin, dass in einer Linie (in einem Richedit) der erste Teil (also der name) fett oder rot ist und der rest (also die nachricht) schwarz und unfett??

also die frage hat zwar nicht viel .... na ja eigentlich nichts mit datenbanken zu tun aber vielleicht könnt ihr mir trozdem helfen.

glkgereon 14. Jul 2004 19:47

Re: Prob mit RichEdit (allgemein)
 
du könntest sowat in der art sagen:

Delphi-Quellcode:
Richedit1.Selstart:=0;//oder 1?
Richedit1.sellength:=Pos(Richedit1.Strings[0],':');
Richedit1.Selected.Color:=clred;
mit dem selected weiss ich nit mehr so genau, ging aber so in etwa...

also im klartext:

von vorne an markieren
die stelle suchen wo ein EINDEUTIGER seperator user und nachricht trennt (hier mit pos, ';' ist der separator...)
dann bis zu der stelle markieren
dann das markierte verändern

und dann noch mit sellength:=0; wieder freigeben (hatte ich vergessen)

darkstoneathome 14. Jul 2004 19:59

Re: Prob mit RichEdit (allgemein)
 
also bei deinem source macht mein compiler nicht mit

Zitat:

Richedit1.sellength:=Pos(Richedit1.Strings[0],':');
da bleibt er das erste mal bei STRINGS stehen

und dann nochmal bei
Zitat:

Richedit1.Selected.Color:=clred;
weil er selected nicht kennt

mach ich irgendwas falsch????
need more tips!

Keldorn 14. Jul 2004 20:28

Re: Prob mit RichEdit (allgemein)
 
Hallo
Delphi-Quellcode:
Richedit1.sellength:=Pos(':',Richedit1.Lines[0]); //lines statt strings und pos umgedreht
Delphi-Quellcode:
Richedit1.Selattributes.Color:=clred
kannst auch mal nach Hier im Forum suchenselattributes im Forum suchen, steht da schon x^15-mal drin

Mfg Frank

glkgereon 14. Jul 2004 22:15

Re: Prob mit RichEdit (allgemein)
 
stimmt! :thuimb:

von wegen strings, in letzter zeit "zu viel" mit TStringList gearbeitet... :-D

funzt es denn jetzt?

darkstoneathome 14. Jul 2004 22:17

Re: Prob mit RichEdit (allgemein)
 
jupp funzt... musste bloß wegen dem anfangswert gucken... (bin da mit dem zeilenumbruch durcheinander gekommen)

aber danke an Keldorn und glkbkk

kalppt alles wunderbar!!! vielen dank

darkstoneathome 15. Jul 2004 13:01

Re: Prob mit RichEdit (allgemein)
 
ich hab da aber gleich noch ein problem

wie bekomm ich das hin, dass das RichEdit gleich nach unten gescrollt ist wenn ich die daten übertrage
immerhin will man bei einem chat nicht immer nach unten scrollen bei jedem eintrag

ich hab zwar per sucher was gefunden
Delphi-Quellcode:
RichEdit1.SelStart := anfang; //anfang ist die Anzahl aller Zeichen in dem RichEdit
RichEdit1.SelLength := 0;
leider bringt es nichts
wie bekomm ich eine art Autosrcoll hin??

glkgereon 15. Jul 2004 18:15

Re: Prob mit RichEdit (allgemein)
 
wenn du immer sagst RichEdit1.Lines.Add(...);, scrollt er dann nicht automatisch?

freak4fun 27. Okt 2004 11:05

Re: Prob mit RichEdit (allgemein)
 
hallo

schon veraltet, aber nein macht es nicht wie geht es?

mfg
freak

glkgereon 27. Okt 2004 11:19

Re: Prob mit RichEdit (allgemein)
 
gzck dir mal die procedure ScrollBy an :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:20 Uhr.
Seite 1 von 2  1 2      

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