Hallo,
ich habe mir ein kleines Programm geschrieben, womit ich Frames ausblenden kann. Die Thematik, die dahinter steckt ist ein bisschen komplexer. Ich habe es mal ganz einfach dagestellt. Ich suche eine Methode aus einer Klasse. Und führe diese dann aus.
Hier mein Code:
Delphi-Quellcode:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Unit3, Unit2;
type
TForm1 =
class(TForm)
Button1: TButton;
Frame21: TFrame2;
Frame31: TFrame3;
procedure DisableFrames(Sender: Tobject);
procedure Button1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.DisableFrames(Sender: TObject);
begin
Frame21.Visible:=False;
Frame31.Visible:=False;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
TProcedure(Form1.MethodAddress('
DisableFrames'));
// --> Hier kommt eine zugriffsverletzung
end;
end.
Hat jemand eine Idee warum???
TProcedure(Form1.MethodAddress('DisableFrames'));
Ich muss das leider so machen, weil eine Externe Datei entscheidet, mit welchen Click welche Methode aus welcher Klasse ausgeführt wird.
MFG Christian18