AGB  ·  Datenschutz  ·  Impressum  







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

Delphi 2010 und TLabel Transparents

Ein Thema von x000x · begonnen am 9. Dez 2010 · letzter Beitrag vom 9. Dez 2010
Antwort Antwort
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#1

Delphi 2010 und TLabel Transparents

  Alt 9. Dez 2010, 11:19
Moin moin,

uns ist vor einer Weile aufgefallen, dass mein Delphi 2010 (Embarcadero® RAD Studio 2010) TLabels defaultmäßig Transparent = False ist. Bei meinem Kollegen (selbe Delphiversion) ist das hingegen defaultmäßig Transparent = True. (In D5 ist ein TLabel auch per Default immer Transparent = False gewesen)

Da sind natürlich Probleme bei der Entwicklung von mehreren Entwicklern an einem Projekt vorprogrammiert.

Kann man eventuell irgendwo in D2010 das default-Verhalten der TLabels einstellen bzw. hat jemand eine Idee, warum das bei meinem Kollegen anders ist als bei mir?
(Die Units StdCtrls sind auf beiden Rechnern die gleichen)
Peter
-= Gruss Peter =-
-= alias x000x =-
  Mit Zitat antworten Zitat
jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#2

AW: Delphi 2010 und TLabel Transparents

  Alt 9. Dez 2010, 12:44
Du hast das Theming deaktiviert, dein Kollege hat es aktiviert.

Zitat:
{ The "default" value for the Transparent property depends on
if you have Themes available and enabled or not. If you have
ever explicitly set it, that will override the default value. }
  Mit Zitat antworten Zitat
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#3

AW: Delphi 2010 und TLabel Transparents

  Alt 9. Dez 2010, 13:47
Moin Andreas,

danke für den entscheidenden Hinweis... das suchen hat nun ein Ende *freu* (Hät ich mal ins Create vom TCustomLabel geschaut)

Obwohl ich dieses Verhalten ehrlich gesagt nicht schön - eigentlich absurt - finde. Mir fällt keine Erklärung ein, warum - wenn ich in meinem Windows XP als Design "Klassisch" eingestellt habe - die Labels dann per default Transparent = False sind. bzw. wenn ich als Design WinXP wähle, die Labels dann per default Transparent sind. (Bei D5 bleiben bleibt es per default immer False)
Dann müssten - meiner Meinung nach - auch diese Propertyeinstellungen IMMER in der DFM mit abgespeichert werden, da sonst die selbe Anwendung einmal mit Theming geöffnet anders ausschaut als wenn das Theming deaktiviert ist.

Beispiel:
Kollege arbeitet mit Theme und zieht ein Label (per default transparent) über ein Picture beschriftet es fein, kompiliert die Anwendung und liefert sie aus.
Kollege ist krank und es muss irgendein BUG gebhoben werde. Ich öffne die Sourcen (Ohne Theme) und denke mir - was hat der denn da gemacht, das Label muss doch transparent - stell es auf Transparent und alles ist wieder prima.

Das heisst doch, dass wenn jemand ein Label auf eine Form zieht (und es ist wichtig dass die Transparenteigenschaft so ist wie sie sein soll), muss er immer von Hand einmal die Transparents ändern, damit das in der DFM mit gespeichert wird?! Warum werden dann die Theme-Abhängigen Eigenschaften nicht immer in der DFM gespeichert?

Gibt es vieleicht noch einen Trick, wie man bei unetrschiedlichen Designs trotzdem gleiches Verhalten bekommen kann - ohne expliziet das Property im Objektinspektor zu setzen?
Peter
-= Gruss Peter =-
-= alias x000x =-
  Mit Zitat antworten Zitat
plusplus

Registriert seit: 30. Jul 2010
106 Beiträge
 
Delphi 2009 Architect
 
#4

AW: Delphi 2010 und TLabel Transparents

  Alt 9. Dez 2010, 13:58
I usually create a base window and inherits all my forms from that base, in the create method of the base form I place a loop:

Code:
uses TypInfo;

for i := 0 to ComponentCount -1 do
begin
  if GetPropInfo(Components[i], 'Transparent') <> nil then
  SetPropValue(Components[i], true);
end;
of course you can also put a if ClassType statement on top.

basically, in the base form I change all properties the way I want them to be, thus I don't need to change it manually in the property editor by hand.
Grid Computing made simple - http://xerocoder.com
  Mit Zitat antworten Zitat
Benutzerbild von x000x
x000x

Registriert seit: 21. Jan 2004
Ort: Bei Hamburg
308 Beiträge
 
Delphi XE2 Professional
 
#5

AW: Delphi 2010 und TLabel Transparents

  Alt 9. Dez 2010, 14:29
@plusplus: Danke...

Noch schlimmer wird es ja bei Umstellungen von Projekten aus Delphi 5... Hier ist es ja ein MUSS, das Theming vorher abzuschalten, damit man wirklich das sieht was man sehen sollte.
(Kann ja sein, das Embarcadero® das irgendwo erwähnt hat - ich habs noch nicht gelesen)

Was spricht eigentlich dagegen, solche Propertys immer in der DFM zu speichern - also auch wenn an dem Default-Wert nichts geändert wurde?
Peter
-= Gruss Peter =-
-= alias x000x =-
  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 10:09 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