Kein Problem!
Also hier der Code des Formulars, von dem alles aufgerufen wird, sozusagen mein "Frame"
Delphi-Quellcode:
unit uFrame;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Menus;
type
TFrame =
class(TForm)
MainMenu1: TMainMenu;
Func_Reaktion: TMenuItem;
procedure Func_ReaktionClick(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Frame: TFrame;
implementation
uses
uNeutral;
{$R *.DFM}
procedure TFrame.Func_NeutralClick(Sender: TObject);
begin
Neutral := TNeutral.Create(self);
end;
end.
Hier der Code von Neutral:
Delphi-Quellcode:
unit uNeutral;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
OleCtrls, SHDocVw, ExtCtrls, StdCtrls, Buttons;
type
TNeutral =
class(TForm)
EIncAnzAtomMitOH: TBitBtn;
EDecAnzAtomMitOH: TBitBtn;
EDecAnzOH: TBitBtn;
EIncAnzOH: TBitBtn;
procedure FormClose(Sender: TObject;
var Action: TCloseAction);
procedure Loaded;
override;
private
{ Private-Deklarationen }
public
WebAnzeige: TStrings;
constructor Create( AOwner: TComponent);
end;
var
Neutral: TNeutral;
implementation
uses uFrontEndNeutral;
var Zeichne: TZeichnen;
{$R *.DFM}
procedure TNeutral.Loaded;
begin
inherited;
Zeichne := TZeichnen.Create;
FehlerLabel.Caption := '
';
Zeichne.Enable(self, false);
end;
constructor TNeutral.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
WebAnzeige := TStringList.Create;
end;
procedure TNeutral.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Zeichne.Free;
Action := caFree;
end;
end.
Nun der Code von uFrontEndNeutral, in der sich TZeichnen befindet:
Delphi-Quellcode:
unit uFrontEndNeutral;
interface
uses
classes,
Graphics,
SysUtils,
FileCtrl,
IniFiles,
uNeutral;
type
TZeichnen =
class(TObject)
public
procedure Enable(aNeutral: TNeutral; Direction: Boolean);
end;
implementation
var
HTML: THTML;
{uninteresssant, ist nur eine HTML ausgabe}
procedure TZeichnen.Enable(aNeutral: TNeutral; Direction: Boolean);
begin
with aNeutral
do
begin
EDecAnzAtomMitOH.Enabled := direction;
EDecAnzOH.Enabled := direction;
EIncAnzAtomMitOH.Enabled := direction;
EIncAnzOH.Enabled := direction;
[und noch mehr davon]
end;
end;
end.
Mit aNeutral im TZeichen.Enable gibt es keinen Fehler mehr, aber es tut sich nichts, da Neutral noch nil ist.
Wenn du noch irgendwas brauchst, sag nur!