Ver Mensaje Individual
  #4  
Antiguo 02-05-2012
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Reputación: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Y recuerda que lo puedes "complicar" y/o "adornar" de no pocas formas diferentes, por ejemplo, aquí un par de unidades, una correspondiente a un "formulario principal" y otra a un formulario "modal" cuya clase implementa una función "estática" que puede usarse para mostrar el formulario tal como quieres. Es sólo para ver que se pueden seguir cantidad de caminos para llegar al mismo sitio, aunque igual la solución propuesta por el compañero más arriba sea la idónea aquí por su sencillez.

Código Delphi [-]
unit UMainForm;

interface

uses
  Forms, Classes, Controls, StdCtrls;

type
  TMainForm = class(TForm)
    ShowMyModalFormButton: TButton;
    procedure ShowMyModalFormButtonClick(Sender: TObject);
  end;

var
  MainForm: TMainForm;

implementation

{$R *.dfm}

uses
  Windows, Dialogs, UMyModalForm;

procedure TMainForm.ShowMyModalFormButtonClick(Sender: TObject);
begin
  if TMyModalForm.ShowMeModal() = IDOK then
  begin
    ShowMessage( 'Accepted! ');
  end
  else
  begin
    ShowMessage( 'Canceled!' );
  end;
end;

end.

Código Delphi [-]
unit UMyModalForm;

interface

uses
  Forms, Controls;

type
  TMyModalForm = class(TForm)
  public
    class function ShowMeModal() : TModalResult;
  end;

var
  MyModalForm: TMyModalForm;

implementation

{$R *.dfm}

{ TMyModalForm }

class function TMyModalForm.ShowMeModal() : TModalResult;
begin
  with TMyModalForm.Create( nil ) do
  try
    result := ShowModal();
  finally
    Free();
  end;
end;

end.

Responder Con Cita