Ich habe das jetzt verworfen und übergebe die Komponenten direkt.
Delphi-Quellcode:
for IComb := 0 to Form1.ComponentCount - 1 do
begin
Ctrl := Form1.Components[IComb];
sCtrl := Ctrl.ClassName;
If (sCtrl = 'TComboBox') or
(sCtrl = 'TFilterComboBox') or
(sCtrl = 'TDriveComboBox') then
begin
ComboHook := HookedCombo_Create;
if assigned(ComboHook) then
begin
ComboHook.SetComboParentObj(TWinControl(Ctrl));
ComboHook.ComboImg := ScrbMemoHook.CreateImageFromFile(FilePath + 'ScrollBarSkin\Combo.png');
ComboHook.FrameColor := $FED3AC;
ComboHook.FrameHighLite := $666666;
ComboHook.FrameStyle := FrameFlat;
ComboHook.Connect;
end;
end;
end;
Die Funktion ist dadurch gegeben wenn auch nicht so elegant wie ich es ursprünglich implementieren wollte.
Danke für deine Erklärungen.
PS:
Zitat:
Erstere Möglichkeit fällt eben weg, wenn du den Adressraum deiner Anwendung verlässt.
Muss da nochmal Nachhaken.
Wenn es so ist wie du sagst.
Müßte die Übergabe so wie sie jetzt von statten geht das gleiche sein.
So.. Dann erkläre mir mal warum ich hier die richtigen Handles bekomme ?
Wenn dem nicht so wäre würden sich die Bitmaps ja auf Irreguläre Positionen setzen
und keinerlei Events der Button funktionieren.
Auch hier bin ich außerhalb des Adressraums meiner Anwendung
gruss
gruss