AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

ListView-Eintrag wird bei Windows 7 schwarz

Ein Thema von Deep-Sea · begonnen am 24. Jun 2010 · letzter Beitrag vom 28. Jun 2014
Antwort Antwort
Seite 2 von 3     12 3   
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#11

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:02
Jap, TWinControl.Brush.Style := bsClear; löst das Problem (es reicht aber aus, wenn man es einmal aufruft, es muss nicht bei jedem Draw-Ereignis sein. Zumindest bei meinem kurzen Test eben, oder?)
Super, was für ein Schei* wieder mal ...
Danke Bummi

Edit:
Zu früh gefreut. Es geht nicht. Es ist eig. noch schlimmer. Wenn man Gruppen nutzt, geht ja nichts mehr (beim eig. Programm ist alles außer den Items schwarz, beim Test aktualisieren sich die Einträge nicht mehr beim scrollen, ...)
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.

Geändert von Deep-Sea (28. Jun 2010 um 15:09 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#12

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:17
Du musst schon dafür sorgen das dein Canvans mit deinen gewünschten Werten (Hintergrundfarbe, ...) belegt ist. Du weißt ja nicht für das er schon "mißbraucht" wurde. Bei Gruppierung wird ja die Gruppierungszeile auch mit dem Canvas gezeichnet so das dieser zwangsweise "verstellt" ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#13

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:21
Du musst schon dafür sorgen das dein Canvans mit deinen gewünschten Werten (Hintergrundfarbe, ...) belegt ist.
Ich zeichne den (fehlerhaft dargestellten) Text aber doch gar nicht

Edit:
Selbst wenn ich immer - unabhängig von Stage - folgendes mache: Canvas.Brush.Color := clRed; tritt der Fehler weiterhin genau so in Erscheinung.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.

Geändert von Deep-Sea (28. Jun 2010 um 15:30 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#14

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:30
Wobei dein Beispiel-Projekt so ja funktioniert, oder?
Delphi-Quellcode:
var
  lv: TListView;
begin
  If (Stage = cdPostPaint) and (Sender is TListView) then
  begin
    lv := Sender as TListView;
    Button1.PaintTo(lv.Canvas, lv.Columns[0].Width, Item.DisplayRect(drBounds).Top);
    lv.Brush.Style := bsClear;
  end;
end;
Greez, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#15

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:34
Wobei dein Beispiel-Projekt so ja funktioniert, oder? [...]
Siehe den Nachtrag von Post #11. Es geht, aber nicht mit Gruppen (die ich eben auch nutze).
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#16

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:37
Ich nutze ListView nie, aber wenn Du auf den Hoovereffekt verzichten kannst, oder mehr zu Fuß machen willst könntest auch OwnerDraw auf true setzen?
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

Registriert seit: 15. Feb 2006
Ort: Hechingen
504 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#17

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:43
Siehe den Nachtrag von Post #11. Es geht, aber nicht mit Gruppen (die ich eben auch nutze).
Dann werde ich hier wohl aussteigen müssen. Hab nur D2007. Da gibts keine Groups.
Ein Tipp wäre noch, dass ganze nicht in OnAdvancedCustomDrawItem sondern in OnAdvancedCustomDrawSubItem aus zu probieren und es nur zu machen wenn SubItem = 1 ist.

Greez, Chris
Christian E.
Es gibt 10 Arten von Menschen, die die Binär lesen können und die die es nicht können

Delphi programming rules
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#18

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:50
[...] wenn Du auf den Hoovereffekt verzichten kannst, oder mehr zu Fuß machen willst könntest auch OwnerDraw auf true setzen?
Mh ... Hoover brauch ich für den konkreten Fall zwar nicht, aber alles selbst zu zeichen und den wahren Fehlergrund nicht zu kennen sehe ich nicht wirklich als befriedigende Lösung an


Dann werde ich hier wohl aussteigen müssen. [...] Ein Tipp wäre noch, dass ganze nicht in OnAdvancedCustomDrawItem sondern in OnAdvancedCustomDrawSubItem aus zu probieren [...]
Schade. Und: In OnAdvancedCustomDrawSubItem geht es genau so wenig.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  Mit Zitat antworten Zitat
Benutzerbild von Bummi
Bummi

Registriert seit: 15. Jun 2010
Ort: Augsburg Bayern Süddeutschland
3.470 Beiträge
 
Delphi XE3 Enterprise
 
#19

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 28. Jun 2010, 15:55
Zitat:
Mh ... Hoover brauch ich für den konkreten Fall zwar nicht, aber alles selbst zu zeichen und den wahren Fehlergrund nicht zu kennen sehe ich nicht wirklich als befriedigende Lösung an
stimmt, befriedigend ist es nicht ...
mit Deinem ursprünglichen Code und Ownerdraw=true sieht es bai mir aber halbwegs brauchbar aus, auch ohne zusätzlicuen Code.

Muß los
LG
Bummi
Thomas Wassermann H₂♂
Das Problem steckt meistens zwischen den Ohren
DRY DRY KISS
H₂ (wenn bei meinen Snipplets nichts anderes angegeben ist Lizenz: WTFPL)
  Mit Zitat antworten Zitat
Benutzerbild von Deep-Sea
Deep-Sea

Registriert seit: 17. Jan 2007
907 Beiträge
 
Delphi XE2 Professional
 
#20

AW: ListView-Eintrag wird bei Windows 7 schwarz

  Alt 29. Jun 2010, 07:17
mit Deinem ursprünglichen Code und Ownerdraw=true sieht es bai mir aber halbwegs brauchbar aus, auch ohne zusätzlicuen Code.
Sofern man keine SubItems nutzt, denn diese werden dann nicht mehr automatisch gezeichnet.
Chris
Die Erfahrung ist ein strenger Schulmeister: Sie prüft uns, bevor sie uns lehrt.
  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 03:41 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