AGB  ·  Datenschutz  ·  Impressum  







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

Label "Transparenz" beibringen

Ein Thema von DieDolly · begonnen am 8. Jun 2020 · letzter Beitrag vom 8. Jun 2020
Antwort Antwort
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#1

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 18:28
Wenn ich da alles kommentiere ist der Hintergrund Dunkelgrau / Schwarz.
Das ist nicht meine Komponente. Ich versuche sie nur mit eurer Hilfe so anzupassen, dass sie ordentlich funktioniert.
Egal was ich da kommentiere oder nicht, der Hintergrund ist dann entweder weiß oder grau mit einem 1px schwarzen Rand.

Geändert von DieDolly ( 8. Jun 2020 um 18:31 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.340 Beiträge
 
Delphi 12 Athens
 
#2

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 19:17
OK, es gibt hier keine Transparenz.
Das ist wie beim Delphi-Referenz durchsuchenTStaticText, welches das "echte" Windows-Label ist.

Dieses hier erbt von Delphi-Referenz durchsuchenTCustomControl, welches ein Nachfahre von TWinControl ist. ein "echtes Windows-Control" mit HWND und eigenem DC.

"Transparent" kann aber nur etwas werden, welches von TGraphicControl erbt, wie z.B. TLabel, TImage und TShape, denn diese Kompoenten sind keine eigenständigen Windows-Controls, sondern "hacken" sich in ihren Parent rein, wo sie sich auf dessen Canvas drauf zeichnen, mit der Möglichkeit, dass vorher der "Inhalt" des Parents gezeichnet wird und dann diese Komponente nur Teile davon übermalt.
Ein Therapeut entspricht 1024 Gigapeut.

Geändert von himitsu ( 8. Jun 2020 um 19:31 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#3

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 19:28
Ich habe irgendwann mal versucht das von TGraphicControl erben zu lassen aber dann gehen einigen Stellen leider kaputt und es wird kein Text mehr ausgegeben.
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#4

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 19:46
Du willst echte Transparenz?

Dann kannst du nur eins tun deinen Text in einem Transparenten Bitmap kopieren und diesen anschließend wie ein Bitmap behandeln.
Aber! Wenn du einen grauen Hintergrund hast ist der Hintergrund des Labels natürlich auch hier dann Grau.

Geändert von venice2 ( 8. Jun 2020 um 20:04 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#5

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 19:54
Zitat:
Du willst echte Transparenz?
Eigentlich nur wo wie es ein TLabel auch macht.
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#6

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 20:06
Zitat:
Du willst echte Transparenz?
Eigentlich nur wo wie es ein TLabel auch macht.
TLabel hat keine Transparenz das sagte @himitsu schon das kannst du nur emulieren!

Ich erstelle für meinen Label einen User definierten ClassenNamen (nicht TLabel) sondern StaticLabel.
Diese Classe wird als 'Button' Registriert und anschließend der Text mit GdipDrawString auf den Button gezeichnet.

Und ja er ist Transparent weil er die Eigenschaft des Button Hintergrund(Transparent (CreateWindowEx(WS_EX_TRANSPARENT..)) annimmt.

Wie du den Text auf den Button schreibst ist egal GDI oder GDI+

EDIT:
Registriere mal dein TMDLabel = class(TCustomControl) als TMDLabel = class(TButton)
und setze die Eigenschaft dessen auf Transparent.

Geändert von venice2 ( 8. Jun 2020 um 20:30 Uhr)
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#7

AW: Label "Transparenz" beibringen

  Alt 8. Jun 2020, 21:02
Zitat:
Registriere mal dein TMDLabel = class(TCustomControl) als TMDLabel = class(TButton)
Das funktioniert nicht, weil es die Paint in der Basisklasse nicht gibt. Ich möchte ja auch keine echte Transparenz.
Ansonsten lebe ich einfach8 damit, dass ich immer die Farbe selber setzen muss. Ist irgendwo auch in Ordnung.

Geändert von DieDolly ( 8. Jun 2020 um 21:41 Uhr)
  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 17:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz