Einzelnen Beitrag anzeigen

Tau

Registriert seit: 17. Mär 2003
Ort: Bludenz
221 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 17:49
Hallo zusammen

@Ferber
habe mir dein Beispiel angeschaut ist nicht so ganz das richtige.
Aber ist eine sehr interessanter Ansatz währe zum überlegen.

Ich glaube ich bin schon etwas weiter gekommen.
Trotzdem habe ich immer noch einen Fehler.

z.B. 1) = OK
Form1 ich habe beide Komponenten auf der form da ist alles OK.
Auch beim entfernen von den einzelnen Komponenten.
Egal in welcher Reihenfolge die Komponenten entfernt werden.

z.B. 2) = Fehler
Auf der Form1 ist die Komponente TcwDemoADOQuery und
im DatenModul ist eine Komponente TcwDemoControl dise zwei sind miteinander verbunden.

Ich lösche die Komponente aus dem DatenModul dann entsteht der Fehler.
Zugriffsverletzung bei Adresse....

Der Code schaut momentan so aus
Delphi-Quellcode:
unit cwDemoADOQuery;

interface

uses
  SysUtils, Classes, DB, ADODB, cwDemoControl, Controls, Forms;

type
  TcwDemoADOQuery = class(TADOQuery)
  private
    FLookControl: TcwDemoControl;
    procedure SetFocusControl(const Value: TcwDemoControl);
  protected
    procedure Notification(AComponent: TComponent; Operation: TOperation); override;
  public
  published
    property LookControl: TcwDemoControl read FLookControl write SetFocusControl;
  end;

procedure Register;

implementation

procedure Register;
begin
  RegisterComponents('Eigene', [TcwDemoADOQuery]);
end;

procedure TcwDemoADOQuery.Notification(AComponent: TComponent; Operation: TOperation);
begin
  inherited;
  if (Operation = opRemove) then
    if (AComponent = FLookControl) then
      FLookControl := nil;
end;

procedure TcwDemoADOQuery.SetFocusControl(const Value: TcwDemoControl);
begin
  if Value = FLookControl then Exit;
  FLookControl := Value;
end;

end.
Bin mir sicher es ist nur eine kleinnichkeit aber mit großer Wirkung

Tau
http://www.quad-offroad.com
wer kämpft kann verlieren aber wer nicht kämpft hat verloren
( Delphi 7 )
  Mit Zitat antworten Zitat