AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Änderung der Farben bei TListView

Ein Thema von s.h.a.r.k · begonnen am 30. Mai 2005 · letzter Beitrag vom 30. Mai 2005
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#1

Änderung der Farben bei TListView

  Alt 30. Mai 2005, 13:15
Hallo!

Ich arbeite gerade mal wieder an einem neuen Projekt, in dem ich TListView verwende. Leider passt das Layout nicht ganz in mein Programm, d.h. ich muss die Farbe (clHighlight) ändern, wenn man ein Item markiert. Am besten schaut man sich die Bilder im Anhang an! Ich will die Farbe so wie im Bild "nachher.jpg" haben - nur wie und wo ändere ich das?!

Des Weiteren würde ich gerne auch die anderen Farben ändern. Nur ich habe nicht wirklich viel dazu gefunden und steh irgendwie auf m Schlauch

Vielen Dank schon mal...

mfg shark
Miniaturansicht angehängter Grafiken
nachher_539.jpg   vorher_496.jpg  
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 13:28
Hi,
den Farbwert ändern halte ich für nicht so toll, da sich das auf das ganze System auswirken würde.
D.h. du musst das Zeichnen selber übernehmen. Es gibt entsprechende Ereignisse (OnDrawItem z.B.) mit denen du das handhaben kannst.

Chris
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 13:35
Ich dachte zum Ändern der Systemfarben ist das ControlPanel da...
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
marabu

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

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 13:46
Korrekt - Farbeinstellungen für Standardkomponenten nimmt der Benutzer vor, nicht der Entwickler.

Grüße vom marabu
  Mit Zitat antworten Zitat
dragi

Registriert seit: 22. Jul 2003
198 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 13:54
Ich weiss nicht ob jetzt die Listview auch dazugehört aber einige Komponenten in der VCL sind nicht weiter als aufrufe der Windows eigenen "Komponenten". Die TabRegister (mir fällt der Name gerade nicht mehr ein) ist so eins. Da gibt es in der VCL keinen wirklich Sourcecode, es wird nicht anderes gemacht als die Windowskomponente aufzurufen. Von daher gibt es für solche Komponenten erstmal auch nicht die Möglichkeit am Design etwas zu ändern anhand von properties. Ich hoffe das wurde von mir jetzt richtig wiedergegeben.

Gruss

Dragi
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#6

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 14:43
Zitat von Chakotay1308:
Hi,
den Farbwert ändern halte ich für nicht so toll, da sich das auf das ganze System auswirken würde.
D.h. du musst das Zeichnen selber übernehmen. Es gibt entsprechende Ereignisse (OnDrawItem z.B.) mit denen du das handhaben kannst.

Chris
Okey. Aber wie genau zeichne ich jetzt was neu hättest du mir da eventuell ein Beipspiel?!? Hab sowas noch nicht wirklich gemacht!

mfg shark
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 14:49
Hi,
Beispiele findest du zwar sicher auch mit der Suche, aber ich gebe dir jetzt trotzdem gerade eines.
Wenn du im entsprechenden Ereignis bist (müsste OnDrawItem sein), dann dort einfach folgendes schreiben:
  Sender.Canvas.Font.Color := clRed; Das würde zum Beispiel die Farbe der Schrift ändern. Du musst halt ein wenig mit den Canvas-Eigenschaften herumspielen.

Chris

Edit: Zu früh abgeschickt.
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#8

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 15:08
danke werde mich da mal umschauen...
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
Benutzerbild von s.h.a.r.k
s.h.a.r.k

Registriert seit: 26. Mai 2004
3.159 Beiträge
 
#9

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 16:11
hab jetzt soweit schon mal die markierung umgestaltet, nur wenn ich dann das neu zeichne wird leider die Schrift überdeckt, was ich nicht will. Besteht die Möglichkeit nur die Schrif neu zu zeichnen?!
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)
  Mit Zitat antworten Zitat
CalganX

Registriert seit: 21. Jul 2002
Ort: Bonn
5.403 Beiträge
 
Turbo Delphi für Win32
 
#10

Re: Änderung der Farben bei TListView

  Alt 30. Mai 2005, 16:16
Hi,
wenn, dann musst du den kompletten Eintrag neuzeichnen und somit auch den Text ändern.
Also einfach per Delphi-Referenz durchsuchenCanvas.TextOut den Text neuzeichnen. Dann sollte es funktionieren.

Chris
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 19:05 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