Einzelnen Beitrag anzeigen

neolithos

Registriert seit: 31. Jul 2003
Ort: Dresden
1.386 Beiträge
 
Delphi 7 Architect
 
#4

Re: Dynamisch erzeugt - Aber Speicherverbrauch bleibt nach E

  Alt 9. Okt 2003, 15:53
Öffne den Dialog mehrmals und schau wie sich dann der Speicher entwickelt.

Manchmal bleiben Handles für die spätere Verwendung erhalten.

Desweiteren...

Delphi-Quellcode:
function JesOrNo: Boolean;
begin
  QuestionForm;
  FreeAndNil(Form); // Zerstört rest mit
end;
Oder sauberer...

Delphi-Quellcode:
function JesOrNo: Boolean;

implementation

function JesOrNo: Boolean;
begin
  Form := TForm.Create(nil);
  With Form do
    begin
    Caption := 'Möchten Sie den Button sichtbar lassen?';
    Width := 500;
    Height := 250;
    Left := Screen.WorkAreaWidth div 2 - Width div 2;
    Top := Screen.WorkAreaHeight div 2 - Height div 2;
    end;

  BtnYes := TButton.Create(Form);
  With BtnYes do
    begin
    Parent := Form;
    Width := 50;
    Height := 25;
    Left := Form.Width div 2 - Width div 2 - Width;
    Top := Form.Height div 2 - Height div 2 - Height;
    Caption := 'Ja';
    ModalResult := mrYes; // <--- NEU
    end;

  BtnNo := TButton.Create(Form);
  With BtnNo do
    begin
    Parent := Form;
    Width := 50;
    Height := 25;
    Left := Form.Width div 2 - Width div 2 + Width;
    Top := Form.Height div 2 - Height div 2 - Height;
    Caption := 'Nein';
    ModalResult := mrNo;
    end;

  Result := Form.ShowModal = mrYes;
  Form.Free;
end;
Sieht doch einfache aus...

Man hätte haber Liebe die Sache OOP-mäßig lösen sollen...

[edit=Christian Seehase]Schliessendes Delphi-Tag korrigiert. Mfg, Christian Seehase[/edit]
- ciao neo -
Es gibt niemals dumme Fragen, sondern nur dumme Antworten!
  Mit Zitat antworten Zitat