فانكشن ساخت فرم دايناميك :
FUNCTION B_CreateForm(Var FName: TForm; FrmCaption: string;
Const FrmAutoSize : Boolean = False;
FrmBiDiMode : TBiDiMode = bdLeftToRight;
FrmBorderIcons : TBorderIcons = [biSystemMenu, biMinimize, biMaximize];
FrmBorderStyle : TFormBorderStyle = bsSizeable;
FrmBorderWidth : TBorderWidth = 0;
FrmClientHeight : Integer = -1;
FrmClientWidth : Integer = -1;
FrmColor : TColor = clBtnFace;
FrmEnabled : Boolean = True;
FrmFontCharset : TFontCharset = DEFAULT_CHARSET;
FrmFontColor : TColor = clWindowText;
FrmFontHeight : Integer = -11;
FrmFontName : TFontName = 'Tahoma';
FrmFontSize : Integer = 8;
FrmFontStyle : TFontStyles = [];
FrmFormStyle : TFormStyle = fsNormal;
FrmHeight : Integer = -1;
FrmHint : string = '';
FrmKeyPreview : Boolean = False;
FrmLeft : Integer = 0;
FrmPopupMenu : TPopupMenu = nil;
FrmPosition : TPosition = poDefaultPosOnly;
FrmShowHint : Boolean = False;
FrmTag : Integer = 0;
FrmTop : Integer = 0;
FrmVisible : Boolean = False;
FrmWidth : Integer = -1;
FrmWindowState : TWindowState = wsNormal;
FrmTransparentColor : Boolean = False;
FrmTransparentColorValue : TColor = clBlack;
FrmPrintScale : TPrintScale = poProportional;
FrmScaled : Boolean = True;
FrmMarginsBottom : TMarginSize = 3;
FrmMarginsLeft : TMarginSize = 3;
FrmMarginsRight : TMarginSize = 3;
FrmMarginsTop : TMarginSize = 3;
FrmMenu : TMainMenu = nil;
FrmPaddingBottom : TMarginSize = 0;
FrmPaddingLeft : TMarginSize = 0;
FrmPaddingRight : TMarginSize = 0;
FrmPaddingTop : TMarginSize = 0;
FrmParentBiDiMode : Boolean = True;
FrmParentCustomHint : Boolean = True;
FrmParentFont : Boolean = False;
FrmPixelsPerInch : Integer = 96;
FrmActiveControl : TWinControl = nil;
FrmAlignWithMargins : Boolean = False;
FrmAlphaBlend : Boolean = False;
FrmAlphaBlendValue : Byte = 255;
FrmAnchors : TAnchors = [akLeft, akTop];
FrmAutoScroll : Boolean = False
): TForm;
BEGIN
FName := TForm.Create(nil);
WITH FName DO
BEGIN
Caption := FrmCaption;
AutoSize := FrmAutoSize;
BiDiMode := FrmBiDiMode;
BorderIcons := FrmBorderIcons;
BorderStyle := FrmBorderStyle;
BorderWidth := FrmBorderWidth;
IF FrmClientHeight <> -1 THEN ClientHeight := FrmClientHeight;
IF FrmClientWidth <> -1 THEN ClientWidth := FrmClientWidth;
Color := FrmColor;
Enabled := FrmEnabled;
Font.Charset := FrmFontCharset;
Font.Color := FrmFontColor;
Font.Height := FrmFontHeight;
Font.Name := FrmFontName;
Font.Size := FrmFontSize;
Font.Style := FrmFontStyle;
FormStyle := FrmFormStyle;
IF FrmHeight <> -1 THEN Height := FrmHeight;
Hint := FrmHint;
KeyPreview := FrmKeyPreview;
Left := FrmLeft;
PopupMenu := FrmPopupMenu;
Position := FrmPosition;
ShowHint := FrmShowHint;
Tag := FrmTag;
Top := FrmTop;
Visible := FrmVisible;
IF FrmWidth <> -1 THEN Width := FrmWidth;
WindowState := FrmWindowState;
TransparentColor := FrmTransparentColor;
TransparentColorValue := FrmTransparentColorValue;
PrintScale := FrmPrintScale;
Scaled := FrmScaled;
Margins.Bottom := FrmMarginsBottom;
Margins.Left := FrmMarginsLeft;
Margins.Right := FrmMarginsRight;
Margins.Top := FrmMarginsTop;
Menu := FrmMenu;
Padding.Bottom := FrmPaddingBottom;
Padding.Left := FrmPaddingLeft;
Padding.Right := FrmPaddingRight;
Padding.Top := FrmPaddingTop;
ParentBiDiMode := FrmParentBiDiMode;
ParentCustomHint := FrmParentCustomHint;
ParentFont := FrmParentFont;
PixelsPerInch := FrmPixelsPerInch;
ActiveControl := FrmActiveControl;
AlignWithMargins := FrmAlignWithMargins;
AlphaBlend := FrmAlphaBlend;
AlphaBlendValue := FrmAlphaBlendValue;
Anchors := FrmAnchors;
AutoScroll := FrmAutoScroll
END;
Result := FName;
END;
var
FSyntax: TForm;
begin
TRY
FSyntax := B_CreateForm(FSyntax, 'FSyntax');
FSyntax.ShowModal;
FINALLY
FSyntax.Free;
END;
FSyntax := B_CreateForm(FSyntax, 'FSyntax', False, bdLeftToRight, [biSystemMenu, biMinimize, biMaximize], bsSizeable, 0, -1, -1, clBtnFace, True, DEFAULT_CHARSET, clWindowText,
-11, 'Tahoma', 8, [], fsNormal, -1, '', False, 0, nil, poDefaultPosOnly, False, 0, 0, False, -1, wsNormal, False, clBlack, poProportional, True,
3, 3, 3, 3, nil, 0, 0, 0, 0, True, True, False, 96, nil, False, False, 255, [akLeft, akTop], False);
FSyntax := B_CreateForm(FSyntax,
{Caption}'FSyntax',
{AutoSize}False,
{BiDiMode}bdLeftToRight,
{BorderIcons}[biSystemMenu, biMinimize, biMaximize], {BorderStyle}bsSizeable,
{BorderWidth}0,
{ClientHeight}662, {ClientWidth}929,
{Color}clBtnFace,
{Enabled}True,
{Font.Charset}DEFAULT_CHARSET, {Font.Color}clWindowText, {Font.Height}-11, {Font.Name}'Tahoma', {Font.Size}8, {Font.Style}[],
{FormStyle}fsNormal,
{Height}-1, {Hint}'',
{KeyPreview}False,
{Left}0, {PopupMenu}nil,
{Position}poDesktopCenter,
{ShowHint}False,
{Tag}0, {Top}0,
{Visible}False,
{Width}-1,
{WindowState}wsNormal,
{TransparentColor}False, {TransparentColorValue}clBlack,
{PrintScale}poProportional,
{Scaled}True,
{Margins.Bottom}3, {Margins.Left}3, {Margins.Right}3, {Margins.Top}3,
{Menu}nil,
{Padding.Bottom}0, {Padding.Left}0, {Padding.Right}0, {Padding.Top}0,
{ParentBiDiMode}True, {ParentCustomHint}True, {ParentFont}False,
{PixelsPerInch}96,
{ActiveControl}nil,
{AlignWithMargins}False,
{AlphaBlend}False, {AlphaBlendValue}255,
{Anchors}[akLeft, akTop],
{AutoScroll}False
);
اگه ممكنه دوستان در بهبود ابن فانكشن كمك كنند
شايد كلاً راه غلطي باشه
ممنون