Thema: Delphi Einfügen von Frames

Einzelnen Beitrag anzeigen

Sunlight

Registriert seit: 12. Jul 2004
7 Beiträge
 
Delphi 7 Enterprise
 
#1

Einfügen von Frames

  Alt 12. Jul 2004, 15:40
Hallo zusammen,

bin noch sehr neu in der Delphi und OOP-Welt und ich schlage mich schon das ganze Wochenende mit folgendem Problem herum:
Ich möchte in ein TForm dynamisch zur Laufzeit Frames (in Unit2 definiert) auf ein OnClick- Ereignis einbinden, d.h. mit jedem Click soll eine neue Zeile (Frame) eingeblendet werden.
Unit 1:
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
  public
  end;

var
  Form1: TForm1;
  MyPanel: TPanel;
  i: Integer;

implementation

uses Unit2;

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
var
  MyFrame: TFrame1;
begin
  MyFrame := TFrame1.Create(self);
  MyFrame.Parent := self;
end;
end.
Einmalig klappt das auch sehr schön, beim zweiten Mal bekomme ich dann aber einen Fehler: 'A component named Frame1 already exists'.
Wenn ich einen ähnlichen Aufruf, aber statt TFrame1 beispielsweise TPanel nehme klappt es wunderbar.

Und dann gleich noch ein weiteres Problem im Unit2 (Frame). Dort habe ich einen Button eingebaut, mit dem der Frame wieder gelöscht werden soll (mittels free). auch hier bekomme ich eine Fehler bei Ausführung: Access Violation
Delphi-Quellcode:
type
  TFrame1 = class(TFrame)
    delete: TButton;
    procedure deleteClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

implementation

{$R *.dfm}

procedure TFrame1.deleteClick(Sender: TObject);
begin
  self.Free;
end;
end.

Ich bin für jede Idee/Anregung dankbar
Hans
Angehängte Dateien
Dateityp: zip dyn.zip (1,8 KB, 8x aufgerufen)
  Mit Zitat antworten Zitat