Autor Beitrag
LonghornUser
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 796



BeitragVerfasst: Mo 16.04.07 01:05 
Hallo,

ich habe folgende Frage zum stinknormalen Speedbutton:
Vorweg: Ich nutze Delphi 7 und der Speedbutton ist Flat.
Ich habe ein XPManifest auf der Form und habe folgenden Schönheitsfehler (Ich habe nicht wirklich die Hintergrundfarbe grün, dient nur der Verdeutlichung ;)):
user defined image
Wie man sieht nimmt der Speedbutton die Farbe der Form und nicht die, der nächsten unter ihm liegenden Komponente an.

Warum ist das so ? Kann ich das irgendwie ändern ?
Oder gibts eine andere Komponente, die mir erlaubt, die Farbe des Buttons zu ändern, die aber auch XPManifest-kompatibel (ansonsten ein ganz normaler TSpeedbutton) ist ?

Danke schonmal.

Gute Nacht LHUser
Karlson
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 2088



BeitragVerfasst: Mo 16.04.07 01:12 
Vorneweg: Ich kann dir nicht helfen!

Ich wollt nur sagen dass ich dasselbe Problem heute hatte. D7, Vista und das XPManifest scheint nicht so gut zu funktionieren. Bei mir war es ein Panel das eine andere Farbe als das Parent haben sollte. Mit dem XP Manifest nahm das Panel aber die Farbe des Parents an. Ich hab das dann letztendlich über ein Shape gelöst. Würde mich interessieren ob da irgendjemand weiss ob und wie man diesen Bug umgehen kann.
LonghornUser Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 796



BeitragVerfasst: Mo 16.04.07 11:47 
Unter XP ist es übrigens dasselbe.
LonghornUser Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 796



BeitragVerfasst: Mo 16.04.07 16:55 
Hallo,

nach einiger Recherche habe ich die Lösung doch noch gefunden:
Und zwar hier: qc.borland.com/wc/qcmain.aspx?d=38831
Es geht aber nicht um den angebotenen Download, welcher leider nichts hilft sondern um den zweiten Kommentar unten drunter. Hier gibts den Hinweis, dass man gewisse Zeilen ausklammern soll. Allerdings muss man nicht die ganze IF Klausel ausklammern sondern nur den Befehl:
PerformEraseBackground(Self, Canvas.Handle); (Zeile 959)

Also:
Die Datei Buttons.pas (Delphi->Source->Vcl) im Editor öffnen. Die Zeile kommentieren.
Dann speichert man die veränderte Buttons.pas-Datei in das Bin Verzerichnis von Delphi und schon geht es, und man muss noch nicht mal irgendwelche DCUs überschreiben. Nicht neukompilieren mit dcc32.exe !!
Wichtig: Man muss sowohl die Transparenz- als auch die Flat Eigenschaft anschalten.

Stimmt das so, was ich gemacht habe oder war das zu einfach ? Habe mit solchen Sachen nicht so eine Erfahrung.
jakobwenzel
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1889
Erhaltene Danke: 1

XP home, ubuntu
BDS 2006 Prof
BeitragVerfasst: Mo 16.04.07 16:58 
@Karlson: Dafür muss nur ParentBackground auf false. (Das gibts beim Speedbutton wohl leider nich)

_________________
I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
Spaceguide
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 552


(D3/D7/D8) Prof.
BeitragVerfasst: Mo 16.04.07 23:46 
Mit Vista scheint es einige Darstellungsprobleme zu haben. Ein TEdit auf einem TPanel ist so gut wie nicht sichtbar mit der Aero-Oberfläche (vllt. kann das hier jemand mal nachstellen und nen Screenshot posten?).
LonghornUser Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 796



BeitragVerfasst: Di 17.04.07 00:53 
user profile iconSpaceguide hat folgendes geschrieben:
Mit Vista scheint es einige Darstellungsprobleme zu haben. Ein TEdit auf einem TPanel ist so gut wie nicht sichtbar mit der Aero-Oberfläche (vllt. kann das hier jemand mal nachstellen und nen Screenshot posten?).


Das kann ich nicht bestätigen. Auf der Form befindet sich ein XPManifest:
user defined image
Spaceguide
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 552


(D3/D7/D8) Prof.
BeitragVerfasst: Di 17.04.07 15:09 
Komisch, bei mir sind die Panels unter Vista viel heller. Spätestens auf einem Tabsheet sollte man aber auch bei dir Probleme kriegen.