[Delphi] Aplikacja MDI - klony

0

Witam,

muszę napisać program, w którym po kliknięciu na Button utworzona zostanie formatka - klon (głównego okna). Na nowej formatce mają być te same komponenty i mieć takie same funkcje, czyli ponownie po kliknięciu w Button utworzony zostaje następny klon. Na formie głównej mam DBGrida w którym wyświetlone są dane z bazy Accessa, Edita i Button. Nie podam niestety żadnych propozycji bo nie wiem jak to ugryźć :|

0

Jeśli dobrze rozumiem, co chcesz osiągnąć ostatecznie, to chyba jedziesz z Łodzi do Warszawy przez Berlin.

Tworzysz sobie jakąś formę bazową, która ma potrzebne komponenty. Gridy, buttony i inne takie. Potem każda forma, która ma tak wyglądać, dziedziczy po prostu po formie bazowej.
Forma MDIParent ma być pusta. Z jej poziomu tworzysz dopiero poszczególne okna MDIChild.

0

czyli muszę to zrobić w ten sposób?

var ChildCount: Integer;

procedure TForm1.Button1Click(Sender: TObject);
var
  ADOConnection1: TADOConnection;
  ADOQuery1: TADOQuery;
  DataSource1: TDataSource;
  DBGrid1: TDBGrid;
  Edit1: TEdit;
  Button1: TButton;
begin
  Child := TForm.Create(self);
  With Child do
  begin
    Name := 'Child '+IntToStr(ChildCount+1)
    FormStyle := fsMDIChild;
    Parent := Form1; 
  end;
  ADOConnection1 := TADOConnection.Create(Self);
  With ADOConnection1 do
  begin
    ConnectionString := Provider=MSDASQL.1;Persist Security Info=False;Data Source=Test;Mode=ReadWrite;Extended Properties="DSN=Test;DBQ=D:\test.mdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;"
    ...
  end;
  ADOQuery1 := TADOQuery1.Create(Self);
  DataSource1 := TDataSource.Create(Self);
  DBGrid1 := TDBGrid.Create(Self);
  Edit1 := TEdit.Create(Self);
  Button1 := TButton.Create(Self);
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1