AGB  ·  Datenschutz  ·  Impressum  







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

Problem mit Label Transparents

Ein Thema von Natcree · begonnen am 26. Nov 2013 · letzter Beitrag vom 27. Nov 2013
Antwort Antwort
Seite 1 von 2  1 2      
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#1

Problem mit Label Transparents

  Alt 26. Nov 2013, 11:47
Hallo ich habe ein label und habe dort Transparent im OI auf true gesetzt nun mehr wenn ich dem label einen String zuweise gibt es einen schwarzen Kasten und keine Schrift. Hier mal ein Bild.

Wo liegt der Fehler?
Miniaturansicht angehängter Grafiken
label.png  
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 11:50
Das hätte ich jetzt eigentlich erwartet wenn Transparent = False und Color = clBlack wäre...
  Mit Zitat antworten Zitat
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#3

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:04
Zur Erklärung auf der Mainform Wird ein Video abgespielt. Die Display Ausgabe ist ein TPanel. Dieses Ist auch auch auf Transparent = True gesetzt. Nun starte ich über einen Buttonclick eine weitere Form welche auch auf bsclear gesetzt ist. auf dieser Form ist Das Label. Habe ich irgendwas Übersehen???
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:32
Ich bin wahrscheinlich sowieso nicht der richtige für VCL-Dinge. Aber trotzdem:
  • Ein TPanel hat doch überhaupt keine Property Transparent. Was meinst du mit Transparent = True ?
  • "Form auf bsClear" bedeutet meineForm.Brush.BrushStyle = TBrushStyle.bsClear ? Wenn ja, wozu das? Du kannst die Form mit TransparentColor durchsichtig machen.
  • Ist Transparent = True nicht eigentlich sowieso Standard für ein TLabel?
  Mit Zitat antworten Zitat
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:43
Sorry ja das panel hat keine transp. Habe color auf clnone gesetzt. Hat jemand noch eine Idee???
  Mit Zitat antworten Zitat
Andreas L.

Registriert seit: 23. Mai 2011
Ort: Furth im Wald
308 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:52
Habe color auf clnone gesetzt. Hat jemand noch eine Idee???
Vielleicht liegt hier das Problem. Wie siehts aus wenn du die Panel-Eigenschaften wieder zurück setzt? Color := clBtnFace, ParentColor := True und ParentBackground := True
Andreas Lauß
Blog
  Mit Zitat antworten Zitat
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#7

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:55
Ändert leider Auch Nichts.. hmmmmmm???
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 12:57
Kannst du ein kleines Beispiel-Projekt zum Reproduzieren des Fehlers einstellen?
  Mit Zitat antworten Zitat
Natcree

Registriert seit: 5. Mär 2013
502 Beiträge
 
Delphi 7 Enterprise
 
#9

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 13:09
Hier mal ein Beispiel. Das Video im Mediaplayer1 sowie das Lied im Mediaplayer2 auf form1 sollte noch geändert werden. da diese Dateien zu gross sind zum Hochladen. Mit Klick auf Mitgliederverwaltung öffnet sich die Form2. danach auf datensatz einlesen Klicken.
Angehängte Dateien
Dateityp: rar Beispiel.rar (2,03 MB, 6x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: Problem mit Label Transparents

  Alt 26. Nov 2013, 13:15
Mal eine Einschätzung unter Vorbehalt (kann falsch sein, ist aber mein letzter Kenntsnisstand):

Ein Label zeichnet sich auf dem Canvas seines Parents. Deshalb wird ein Label immer hinter Controls gezeichnet. Hier ist eine Transparenz lösbar, weil das Label dann nur seinen Text zeichnen muss.

Bei Panels ist das schwieriger. Eine echte Transparenz gibt es hier nicht. Ein Panel kann die Farbe seines Parents übernehmen, dann ist es nicht direkt zu sehen.
Ist der Parent aber nicht einfarbig, hilft das auch nicht. Dann könnte man den passenden Ausschnitt des Parent-Canvas auf den Panel-Canvas kopieren und dann z.B. noch Text darauf zeichnen.
Das ist natürlich aufwendig und schwierig.
Wenn ein Panel andere Controls überdeckt (z.B. über zwei Schaltern mit dem gleichen Parent liegt), ist eine Transparenz gar nicht mehr zu erreichen.

Man kann Panels "ausstanzen" oder "ausschneiden" (über Regionen), so dass Teile des Panels "fehlen" und somit eine echte Transparenz entsteht. Dann werden aber auch Controls abgeschnitten, die über der Region liegen. Es sind sozusagen richtige Löcher, die dann auch keine Mausereignisse abfangen können.

Sobald ein Videoplayer ins Spiel kommt wird es noch komplizierter.
Da werden dann die Daten aus einem Videobildspeicherbereich oder so verarbeitet. Da wird man dann auch je nach System mit verschiedenen Ergebnissen rechnen müssen.


Firemonkey bietet da etwas mehr Flexibilität, hat aber auch wieder Schwächen. Die VCL kann man sich leider nicht als übereinander liegende Folien vorstellen, die transparente Bereiche enthalten können.

Ich hoffe, das passt so ungefähr...
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  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 21:54 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