Ich will auch mal:
Delphi-Quellcode:
unit uFormUtils;
interface
uses
Vcl.Forms;
type
TFormUtils =
record
public
class procedure ShowForm<T: TCustomForm>(
var Instance: T);
static;
end;
implementation
class procedure TFormUtils.ShowForm<T>(
var Instance: T);
begin
if Instance =
nil then begin
Instance := T.Create(Application);
end;
Instance.Show;
end;
Der (typsichere) Aufruf wäre dann in etwa so:
TFormUtils.ShowForm<TForm2>(Form2);