AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi LISTBOX: Immer die ersten 10 Zeichen eines eintrags färben?!

LISTBOX: Immer die ersten 10 Zeichen eines eintrags färben?!

Ein Thema von benniwm · begonnen am 7. Mai 2005 · letzter Beitrag vom 8. Mai 2005
Antwort Antwort
Seite 2 von 3     12 3   
Benutzerbild von benniwm
benniwm

Registriert seit: 2. Nov 2003
Ort: Monheim/Bayern
14 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: [LISTBOX]Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 09:58
ich bin für jede methode bereit!
nur da müsste ich dann auch wieder die einzelnen stücke markieren und dann färben lassen oder?
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#12

Re: [LISTBOX]Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 10:01
Ja, aber es ist deutlich einfacher.
Such mal nach Hier im Forum suchenselstart sellength , du musst also nicht aufwändig rumzeichnen ...
  Mit Zitat antworten Zitat
Benutzerbild von benniwm
benniwm

Registriert seit: 2. Nov 2003
Ort: Monheim/Bayern
14 Beiträge
 
Delphi 7 Enterprise
 
#13

Re: [LISTBOX]Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 10:22
glaube ich nicht weil ich ja nen ganzen string habe, und somit ja nicht weiß wann der name aufhört und der text anfängt.
außer ich sende die länge des nicks immer mit:
z.b nickname=Peter
dann würde die nachrihct so aussehen:
5[11:18:03]Peter:NAchricht....
dann könnte ich das erste zeichen aus dem string entfernen und dann so weiter machen:
Delphi-Quellcode:
//Uhrzeit
    richedit1.SelStart := 0;
    richedit1.SelLength := 10;
    richedit1.SelAttributes.Color := clBLue;
//Name
    richedit1.SelStart := 11;
    richedit1.SelLength := 11+Die Zahl die vom string entfernt wurde;
    richedit1.SelAttributes.Color := clRed;
//Text
    richedit1.SelStart := richedit1.SelLength := 11+Die Zahl die vom string entfernt wurde;
    richedit1.SelLength := Length(RichEdit1.Text);
    richedit1.SelAttributes.Color := clBLue;
nur weiß ich nicht wie ich die Zahl wegnehmen kann...
thx!!
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#14

Re: [LISTBOX]Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 10:32
Such einfach mit Delphi-Referenz durchsuchenPos nach "]", dann hast du die Uhrzeit. Den Namen bekommst du dann mit Delphi-Referenz durchsuchenPosEx und ":", als Startposition das Ergebnis vom Pos davor.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Benutzerbild von benniwm
benniwm

Registriert seit: 2. Nov 2003
Ort: Monheim/Bayern
14 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:04
so ich hab jetzt folgendes heraus gebracht:
Delphi-Quellcode:
procedure TForm1.RichEdit1Change(Sender: TObject);
var
  Line: string;
  uhr: integer;
  name1: integer;
begin
  line := richedit1.Lines[0];
  uhr := pos(']' , line);
  name1:= pos(']', line)+1;
  richedit1.SelStart := 0;
  richedit1.SelLength := uhr;
  richedit1.SelAttributes.Color := clBLue;
  richedit1.SelStart := uhr+1;
  richedit1.SelLength := name1;
  richedit1.SelAttributes.Color := clLime;
  richedit1.SelStart := uhr+name1;
  richedit1.SelLength := length(line);
  richedit1.SelAttributes.Color := clred;
end;
wenn aber jetzt eine nachricht hinzugefügt wird kommt das:
Zitat:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt client.exe ist eine Exception der Klasse EOutOfResources mit der Meldung 'Fehler beim Einfügen einer Zeile in RichEdit' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
jetzt bin ich am ende!!
bitte helft mir!
thx
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#16

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:07
Hai benniwm,

Du benutzt das Ereigniss .OnChange um auf eine änderung im RichEdit zu reagieren. In der Methode änderst Du das RichEdit aber wieder. Darum wird wieder das OnChange aufgerufen. Dies dürfte der Grund für die Fehlermeldung sein.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von benniwm
benniwm

Registriert seit: 2. Nov 2003
Ort: Monheim/Bayern
14 Beiträge
 
Delphi 7 Enterprise
 
#17

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:10

hmm stimmt wohl aber ich habe keine andere idee wie ich das andesr machen kann
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#18

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:12
Zitat von benniwm:
... keine andere idee wie ich das andesr machen kann
Mache es doch an der Stelle wo Du den Text in das RichEdit schreibst.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Benutzerbild von benniwm
benniwm

Registriert seit: 2. Nov 2003
Ort: Monheim/Bayern
14 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:15
ich bin mir nicht sicher aber dann würde das nur bei einem selebr so aussehen, weil es sollten ja auch erhaltene nachrichten so aussehen..
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#20

Re: LISTBOX: Immer die ersten 10 Zeichen eines eintrags färb

  Alt 8. Mai 2005, 18:44
Irgendwo wirst du doch wohl den Text vom anderen Gesprächspartner empfangen und ins Richedit einfügen. Genau danach rufst du dann deinen Code auf.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:04 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