AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Memoähnliche Komponente für Zeilenhervorhebung
Thema durchsuchen
Ansicht
Themen-Optionen

Memoähnliche Komponente für Zeilenhervorhebung

Ein Thema von faux · begonnen am 2. Jun 2006 · letzter Beitrag vom 2. Jun 2006
Antwort Antwort
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#1

Memoähnliche Komponente für Zeilenhervorhebung

  Alt 2. Jun 2006, 15:52
Hallo!

Also ich habe zur Zeit ein Memo auf meiner Form, mit dem ich ja keinen Text färben kann (oder?).
Ich will jetzt folgendes Logfile sozusagen Highlighten:
Code:
[SQL]   [2006-05-29 21:09:56]   SELECT username, password, groupname, rootdir, homedirFROM users, groupsWHERE username = 'faux' AND password = MD5('19010203')AND groups.id = `group`LIMIT 1
[Info]   [2006-05-29 21:09:56]   Login information of "faux" had been queried
[SQL]   [2006-05-29 21:09:59]   SELECT username, password, groupname, rootdir, homedirFROM users, groupsWHERE username = 'faux' AND password = MD5('1901020')AND groups.id = `group`LIMIT 1
[Error]   [2006-05-29 21:31:03]   Could not connect to the SQL-Server. Please check login information in config.ini.
[SQL]   [2006-05-31 19:42:17]   SELECT username, password, groupname, rootdir, homedir FROM users, groups WHERE username = 'faux' AND password = '19010203' AND groups.id = `group` LIMIT 1
[Info]   [2006-06-01 21:44:53]   Login information of "faux" had been queried.
[Error]   [2006-06-02 15:49:28]   Could not connect to the SQL-Server. Please check login information in config.ini.
Zeilen die mit [SQL] beginnen, sollen eine eigene Farbe haben, Zeilen mit [Error], [Info] und [Warning] ebenfalls.
Welche Komponente ist hier geeignet und wie kann ich das machen?
Wenn möglich mit VCL oder den JEDIs.

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
dfried

Registriert seit: 16. Aug 2005
486 Beiträge
 
#2

Re: Memoähnliche Komponente für Zeilenhervorhebung

  Alt 2. Jun 2006, 15:55
Wir verwenden für solche Sachen TRichEdit.
Zum einfärben machen wir dann z.B. folgendes:
Delphi-Quellcode:
  // Fehler rot darstellen
  if pError then
    meLog.SelAttributes.Color := clRed
  else
    meLog.SelAttributes.Color := clBlack;
  Mit Zitat antworten Zitat
Benutzerbild von faux
faux

Registriert seit: 18. Apr 2004
Ort: Linz
2.044 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Memoähnliche Komponente für Zeilenhervorhebung

  Alt 2. Jun 2006, 15:57
Dazu muss ich den entsprechenden Text aber vorher markieren, oder?
Ich laden den ganzen Text jedoch per LoadFromStream ins Memo, wodurch ich dann den ganzen Text parsen müsste, und wenn ich dann jede Zeile einzeln markiere, dauert das bei einem groß Logfile sher lange, würde ich mal sagen.
Gibts da einen Ausweg?
Kann ich dazu SynEdit ev. benutzen?

Grüße
Faux
Faux Manuel
Wer weiß, dass er nichts weiß, weiß mehr, als der der nicht weiß, dass er nichts weiß.
GoTrillian
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Memoähnliche Komponente für Zeilenhervorhebung

  Alt 2. Jun 2006, 17:17
Hallo Faux,

da deine Protokolldateien offensichtlich eine Zeilenstruktur besitzen, würde ich sie in einer StringList verwalten und in einer virtuellen ListView anzeigen. Wenn die Dateien vollständig in den Hauptspeicher geladen werden dürfen, dann kannst du sie einfach mit der Methode LoadFromFile() einlesen. Sind die Dateien zu groß oder möchtest du den Hauptspeicher lieber nicht belasten, dann ist auch ein gepufferter Direktzugriff möglich. Das zeilenweise Einfärben einer ListView sollte kein Problem darstellen, allerdings würde ich eher mit Icons arbeiten wollen.

Grüße vom marabu
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:14 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