AGB  ·  Datenschutz  ·  Impressum  







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

TMaskEdit in TListView-Spalte färben

Ein Thema von marcibaer · begonnen am 19. Apr 2011 · letzter Beitrag vom 4. Mai 2011
Antwort Antwort
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
74 Beiträge
 
Delphi XE2 Professional
 
#1

TMaskEdit in TListView-Spalte färben

  Alt 19. Apr 2011, 20:25
Hallo zusammen!

Ich habe folgendes Problem:
ich habe ein TMaskEdit in eine Zelle eines TListViews gesetzt - was sehr gut klappt.
Allerdings lässt sich der Text des MasEdits nicht einfärben, d.h.,

Delphi-Quellcode:
    if Test then
      Edit.Font.Color := clBlack
    else
      Edit.Font.Color := clRed;
was funktioniert, wenn man ein Edit direkt auf das Form setzt, funktioniert in einem ListView nicht!

Irgendwelche Ideen, woran das liegt?

Viele Grüße,

Marcibaer
Marc
  Mit Zitat antworten Zitat
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
74 Beiträge
 
Delphi XE2 Professional
 
#2

AW: TMaskEdit in TListView-Spalte färben

  Alt 3. Mai 2011, 16:36
Hallo zusammen!

Hat denn keiner 'ne Idee, warum sich die Textfarbe eines Edits innerhalb eines ListViews nicht ändert?!

Bei einem Button, den ich direkt daneben gesetzt habe - also auch in einem Feld eines Listviews - klappt's nämlich ohne Probleme!

Typ des Listview's: vsReport
OwnerDraw: false
Marc
  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
 
#3

AW: TMaskEdit in TListView-Spalte färben

  Alt 3. Mai 2011, 16:57
Wenn Du das Maskedit auf ein Panel legst und dem Panel statt dem Maskedit das Listview als parent zuweist funktioniert es.
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
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
74 Beiträge
 
Delphi XE2 Professional
 
#4

AW: TMaskEdit in TListView-Spalte färben

  Alt 4. Mai 2011, 12:41
Und wieso ist das so!?

Klappt anscheinend noch nicht richtig - jetzt sehe ich das Panel an der richtigen Stelle, aber kein Edit drauf!

Ich hab's folgendermassen gemacht:
Delphi-Quellcode:
Panel := TPanel.Create(nil);
Panel.Parent := StreckenListe; // mein ListView
Edit := TMaskEdit.Create(nil);
Edit.Parent := Panel;
Damit hab ich doch 'nen MaskEdit in einem Panel in einem Listview, oder!?
Jetzt schalte ich sowohl Panel als auch Edit auf visible, aber es erscheint nur das Panel - das Edit hat aber die gleichen Koordinaten wie das Panel!

Was muss ich denn noch setzen!?
Marc
  Mit Zitat antworten Zitat
Benutzerbild von ChrisE
ChrisE

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

AW: TMaskEdit in TListView-Spalte färben

  Alt 4. Mai 2011, 13:15
das Edit hat aber die gleichen Koordinaten wie das Panel!
Das ist der Fehler. Alle Komponenten auf einem Panel haben die Koordinaten bezüglich des Panel. D.h. Edit mit Left 0 / Top 0 liegt dann an der richtigen Stelle.

Gruß, 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
marcibaer

Registriert seit: 27. Sep 2006
Ort: Inden
74 Beiträge
 
Delphi XE2 Professional
 
#6

AW: TMaskEdit in TListView-Spalte färben

  Alt 4. Mai 2011, 14:35
Stimmt, dann geht's!!!

Kann mir denn trotzdem mal einer erklären, WARUM ich bei 'nem Edit den "Umweg" über 'nen Panel gehen muss, damit ich den Text färben kann, bei einem Button z.B. aber nicht!?
Marc
  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 21:44 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