Tja, aber wo?
Der Fehler tritt nur auf, wenn ich im Testprojekt
"uses xxx" hinzufüge.
Kommentiere ich die Bibliothek aus, ist alles fehlerfrei.
Das Unit xxx keinen initialisierungsteil hat, und ich in meinem Projekt auf KEINE Prozedur bzw. kein Object oder Klasse aus unit xxx verwende, kann das nur über indirekte Beziehungen geschehen.
Hier mein Testprojekt (nur ein Formular UNIT1):
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21:
| unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, xxx, StdCtrls, ExtCtrls; type TForm1 = class(TForm) GroupBox1: TPanel; CheckBox2: TCheckBox; private public end; var Form1: TForm1; implementation {$R *.dfm} end. |
Und hier die Ansichten des Formulares in der IDE/DesignEditor (okay=checkbox hat rote Caption):
und so soll es aussehen (ohne die Unit xxx; die checkbox Caption ist schön rot):
wenn ich aber die Unit XXX einbinde, gibt's plötzlich in der Checkbox keine Farbe mehr.
Selbst wenn ich dann per checkbox2.font.color:=clred; versuche das zur Laufzeit zu setzen, bleibt die Anzeige weiterhin schwarz.
In meiner Warenwirtschaft ist die ganze Darstellung noch schwieriger (plötzlich geänderte Rahmenecken (rund statt eckig), blaue Titel etc.). Eventuell greift da irgendein XP Manifest? Obiges Beispiel ist wirklich so simpelst wir möglich aufgelöst.
Aber jetzt müßte ich schon wissen, ob überhaupt ein Einsprung in die unit xxx stattfindet.