También podría hacerlo como lo hace pero llamando a la función desde el evento OnShow:
Código Delphi
[-]
procedure OpenDialogShow(var Sender: TObject);
begin
if TOpenDialog(Sender).Tag = 1 then
SetDlgItemText(GetParent(TOpenDialog(Sender).Handle), IDOK, PChar('&Abrirlo'))
else
SetDlgItemText(GetParent(TOpenDialog(Sender).Handle), IDOK, PChar ('&Guardarlo'));
end;
procedure TForm1.OpenDialog1Show(Sender: TObject);
begin
OpenDialogShow(Sender);
end;
Y mantiene su filosofía de unidades de código...
Saludos.