Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: My Delphi 2010 is sick

  Alt 9. Jul 2012, 09:18
Es muß nichtmal am OnGradientChange liegen, denn dieses wird auch nochmal im OnColorChange aufgerufen.

Delphi-Quellcode:
Procedure TMyForm.MyFormInitialize;
Begin
  MyControl.OnDoSomething := MyFormDoSomethingEventHandler;
// ... more init stuff here
End;

Procedure TMyForm.FormActivate(Sender : TObject);
Begin
  if not FInitialized Then MyFormInitialize;
  FInitialized := True;
End;
Also entweder das Event später dranhängen

oder es ignorieren (innerhalb der Komponente oder im Event)
Delphi-Quellcode:
procedure TGradientDialog.GradientChange(Sender: TObject);
var
  I: Integer;
  A: TColorArray;
begin
  if FUpdate or not Assigned(cbReverse) then Exit;
Delphi-Quellcode:
procedure TGradientDialog.GradientChange(Sender: TObject);
var
  I: Integer;
  A: TColorArray;
begin
  if FUpdate or not Assigned(cbReverse) then Exit;
Es wird ja am Ende sowieso aufgerufen, also kann man es auch einfach überspringen, ohne etwas zu beachten.
TGradientDialog.Create => ColorChange => GradientChange
$2B or not $2B
  Mit Zitat antworten Zitat