AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Zentrale Komponenten Verwaltung?

Ein Thema von Tau · begonnen am 2. Feb 2006 · letzter Beitrag vom 6. Feb 2006
Antwort Antwort
Seite 2 von 2     12   
Tau

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

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 15:28
@Christian
erstmals Danke das du soviel geduld mit mir hast. Ich weis es ist ab und zu schwierig jemanden was zu erklären wenn man selber nicht mal weis wie das ganze funktionieren soll.

Ich habe mich für die Variante {1} entschieden.

habe da immer noch das Problem das wenn ich die Komponente (TDemoControll)
von der Form lösche das ein Fehler auftritt.

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

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

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 16: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
Ferber

Registriert seit: 9. Mär 2005
Ort: Wien Umgebung
155 Beiträge
 
Delphi 2006 Architect
 
#13

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 17:13
Hi Tau !

Hab mir deinen code genau angesehen, ist Ok.
Der Fehler muss irgendwoanders sein, falls ich nicht doch was übersehen habe.

Poste mal den Rest (evtl. als Anhang) vielleicht sitzt der Wurm dort !?
Otto
  Mit Zitat antworten Zitat
Tau

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

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 18:29
Hallo zusammen

@Ferber

Der Code für TcwDemoControl schaut momentan so aus
Delphi-Quellcode:
unit cwDemoControl;

interface

uses
  SysUtils, Classes, Graphics, Controls;

type
  TcwDemoControl = class(TComponent)
  private
    FFocusControl: TWinControl;
    FFont: TFont;
    FZahl1: Integer;
    FZahl2: Integer;
    procedure SetFocusControl(Value: TWinControl);
  protected
    procedure Notification(AComponent: TComponent; Operation: TOperation); override;
    property FocusControl: TWinControl read FFocusControl write SetFocusControl;
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    property Font: TFont read FFont write FFont;
    property Zahl1: Integer read FZahl1 write FZahl1;
    property Zahl2: Integer read FZahl2 write FZahl2;
  end;

procedure Register;

implementation

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

constructor TcwDemoControl.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);

  FFont := TFont.Create;
end;

destructor TcwDemoControl.Destroy;
begin
  FFont.Free;

  inherited Destroy;
end;

procedure TcwDemoControl.Notification(AComponent: TComponent; Operation: TOperation);
begin
  inherited;
  if (Operation = opRemove) and (AComponent = FFocusControl) then
    FFocusControl := nil;
end;

procedure TcwDemoControl.SetFocusControl(Value: TWinControl);
begin
  FFocusControl := Value;
  if Value <> nil then Value.FreeNotification(Self);
end;

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

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

Re: Zentrale Komponenten Verwaltung?

  Alt 4. Feb 2006, 21:27
Hallo Ferber

Habe einiges getestet. Der Fehler tritt auch dann
auf wenn ich den Code bis auf das Minimum reduziere.

[Edit]Es ist immer noch der gleiche Fehler[Edit]

Code Beispiel:
Delphi-Quellcode:
unit cwDemoControl;

interface

uses
  SysUtils, Classes, Graphics, Controls;

type
  TcwDemoControl = class(TComponent)
  private

  protected

  public

  published

  end;

procedure Register;

implementation

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

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

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

Re: Zentrale Komponenten Verwaltung?

  Alt 6. Feb 2006, 09:30
Hallo Leute

Hat keiner einen Tipp für mich?

Oder kann jemand bitte überprüfen ob der Fehler
bei ihm auch auftritt oder nur bei mir.

würde mir schon etwas weiter helfen.

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


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz