anchor.diff:      if Assigned(FOldWndProc) then
         FForm.WindowProc := FOldWndProc;
     end;
  +  ClearEvents;
  +  FObjectEvents.Free;
     inherited;
  +end;
  +
  +procedure TDDuiForm.DuiNotifyEvent(Sender: TObject; var Msg: TNotifyUI);
  +var
  +  LItem: TDuiObjecItem;
  +{$IFNDEF SupportGeneric}
  +  I: Integer;
  +{$ENDIF}
  +  LHandled: Boolean;
  +begin
  +  LHandled := False;
  +{$IFDEF SupportGeneric}
  +  if FObjectEvents.TryGetValue(Msg.pSender.Name, LItem) then
  +  begin
  +    if LItem.EventType = Msg.sType then
  +      LItem.Event(Msg, LHandled);
  +  end;
  +{$ELSE}
  +  I := IndexOfObjEvent(Msg.pSender.Name);
  +  if I <> -1 then
  +  begin
  +    LItem := PDuiObjecItem(FObjectEvents[I])^;
  +    if LItem.EventType = Msg.sType then
  +      LItem.Event(Msg, LHandled);
  +  end;
  +{$ENDIF}
  +  if LHandled then Exit;
  +  if Assigned(FOnNotify) then
  +    FOnNotify(Sender, Msg);
   end;
   
   procedure TDDuiForm.InitDuiComponent;
  
positive.code: 
  constructor TDDuiApp.Create(AOwner: TComponent);
  begin
    if AppObjectExists then
      raise Exception.Create('DDuilib App ObjectѾڣ');
    inherited Create(AOwner);
    if not (csDesigning in ComponentState) then
    begin
      if Assigned(Application) then
      begin
  
negative.code:   FForm := AOwner as TCustomForm;
    FSkinResName := 'DefaultSkin';
    FSkinKind := skFile;
    FObjectEvents := TDuiObjectEvents.Create;
    if not(csDesigning in ComponentState) then
    begin
      FOldWndProc := FForm.WindowProc;
  