Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#37

Re: Pro Chat v1.0 - Der neuste Chat in der DP :-)

  Alt 14. Sep 2005, 12:15
Danke!
Zitat:
1.) Wie schon mehrfach gefragt: Wie realisierst du das Blinken der Schrift im RichEdit?
2.) Wie bekommst du die Smileys da rein? Wie hast du eingestellt, dass du sie nicht in der Größe verändern kannst?
Zu 1.: Das blinken der Schrift realisieren ich, indem ich beim Auftreten eines Fehlers zuerst ganz normal die Fehlermeldung zum Log mit der StdFarbe clMaroon hinzufüge. Gleichzeitig wird die Position des 1.Zeichens der Fehlermeldung in einer StringList und die Länge der Fehlermeldung in einer anderen StringList gespeichert. In einem OnTimer Event (Interval = 5000) gehe ich in einer Schleife alle einträge der 1. StringList durch. In etwa so:
Delphi-Quellcode:
if State = 0 then
begin
  for i := 0 to StringList1.Items.Count -1 do
  begin
    RichEdit1.SelStart := StrToInt(StringList1.Items[i]);
    RichEdit1.SelLength := StrToInt(StringList1.Items[i]);
    RichEdit1.SelAttributes.Color := clRed;
  end;
  State := 1;
end
  else
begin
  for i := 0 to StringList1.Items.Count -1 do
  begin
    RichEdit1.SelStart := StrToInt(StringList1.Items[i]);
    RichEdit1.SelLength := StrToInt(StringList1.Items[i]);
    RichEdit1.SelAttributes.Color := clMaroon;
  end;
  State := 0;
end;
Zu 2.: Ich benutze TJvRichEdit, welches eine Mathode "InsertBitmap" enthält um Smilies einzufügen. Das Verändern der Größe wird mit ReadOnly = true verhindert. Beim Empfangen einer Message prüft der Chat, ob eine bestimmte Zeichenfolge vorkommt (z.B.
Code:
:-)
für ), markiert diese und setzt JvRichEdit1.SelText auf ''. Danach wird InsertBitmap(Bmp, false) aufgerufen.

Momentan arbeite ich an der Channel Liste. Es wird so sein, dass man über diese Liste alle geöffneten Server einsehen kann. Dabei ist eine Server ein "Channel".

Floriam
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat