Form

TsgcHTMLComponent_Form — un generador de formularios basado en datos que genera formularios Bootstrap 5 con campos de texto, selección, casilla, radio, archivo, fecha y rango, validación, diseños vertical/horizontal/en línea y generación de formularios con IA, en Delphi, C++ Builder y .NET.

TsgcHTMLComponent_Form

Un componente de formulario que construye un <form> de Bootstrap a partir de una colección Fields. Añade campos (o vincula un dataset), elige un diseño y luego lee la propiedad HTML.

Clase del componente

TsgcHTMLComponent_Form

Genera

Marcado <form> de Bootstrap 5

Lenguajes

Delphi, C++ Builder, .NET

Créalo, añade campos, genéralo

Configura Action, Method y Layout, añade uno o más Fields y luego lee HTML (o colócalo en una página TsgcHTMLTemplate_Bootstrap).

uses
  sgcHTML_Enums, sgcHTML_Component_Form;

var
  oForm: TsgcHTMLComponent_Form;
  oField: TsgcHTMLFormField;
begin
  oForm := TsgcHTMLComponent_Form.Create(nil);
  try
    oForm.Action := '/contact';
    oForm.Method := fmPost;
    oForm.Layout := flVertical;
    oForm.SubmitText := 'Send';
    oForm.SubmitStyle := bsPrimary;
    oForm.ShowReset := True;

    oField := oForm.Fields.Add;
    oField.FieldType := ftText;
    oField.Name := 'name';
    oField.Label_ := 'Full name';
    oField.Required := True;

    oField := oForm.Fields.Add;
    oField.FieldType := ftEmail;
    oField.Name := 'email';
    oField.Label_ := 'Email';
    oField.Placeholder := 'you@example.com';

    WebModule.Response := oForm.HTML;   // Bootstrap <form> markup
  finally
    oForm.Free;
  end;
end;

// Or build the fields straight from a dataset:
oForm.LoadFromDataSet(qryCustomer);
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_Form.hpp

TsgcHTMLComponent_Form *oForm = new TsgcHTMLComponent_Form(NULL);
try
{
  oForm->Action = "/contact";
  oForm->Method = fmPost;
  oForm->Layout = flVertical;
  oForm->SubmitText = "Send";
  oForm->SubmitStyle = bsPrimary;
  oForm->ShowReset = true;

  TsgcHTMLFormField *oField = oForm->Fields->Add();
  oField->FieldType = ftText;
  oField->Name = "name";
  oField->Label_ = "Full name";
  oField->Required = true;

  oField = oForm->Fields->Add();
  oField->FieldType = ftEmail;
  oField->Name = "email";
  oField->Label_ = "Email";
  oField->Placeholder = "you@example.com";

  String html = oForm->HTML;   // Bootstrap <form> markup
}
__finally
{
  delete oForm;
}
using esegece.sgcWebSockets;

var form = new TsgcHTMLComponent_Form();
form.Action = "/contact";
form.Method = TsgcHTMLFormMethod.fmPost;
form.Layout = TsgcHTMLFormLayout.flVertical;
form.SubmitText = "Send";
form.SubmitStyle = TsgcHTMLButtonStyle.bsPrimary;
form.ShowReset = true;

var field = form.Fields.Add();
field.FieldType = TsgcHTMLFieldType.ftText;
field.Name = "name";
field.Label_ = "Full name";
field.Required = true;

field = form.Fields.Add();
field.FieldType = TsgcHTMLFieldType.ftEmail;
field.Name = "email";
field.Label_ = "Email";
field.Placeholder = "you@example.com";

string html = form.HTML;   // Bootstrap <form> markup

Propiedades y métodos clave

Los miembros que más utilizarás.

Fields

Fields es una colección de TsgcHTMLFormField; llama a Fields.Add y configura FieldType (ftText, ftEmail, ftSelect, ftCheckbox, ftRadio, ftFile, ftDate, ftRange y más), Name, Label_, Value y Required.

Envío

Action y Method (fmGet / fmPost) determinan el destino del envío; FormID identifica el elemento del formulario.

Diseño

Layout elige flVertical, flHorizontal o flInline; LabelColWidth y FieldColWidth dimensionan las columnas de un diseño horizontal.

Botones

SubmitText, SubmitStyle (un TsgcHTMLButtonStyle), ShowReset y ResetText controlan los botones de acción.

Vinculación a dataset

LoadFromDataSet(aDataSet) genera campos a partir de las columnas de una consulta; LoadValuesFromDataSet(aDataSet) rellena los campos existentes con los valores de la fila actual.

Generador de formularios con IA

AIBuildEnabled y AIBuildPlaceholder añaden una barra de prompt; BuildFromAIDescription(aDescription) dispara OnAIBuildForm y LoadFieldsFromJSON(aJSON) rellena los campos a partir de una definición JSON.

Sigue explorando

Todos los componentes de sgcHTMLExplora la matriz de características completa de más de 60 componentes.
Descargar prueba gratuitaLa prueba de 30 días incluye los proyectos de demostración 60.HTML.
PreciosLicencias Single, Team y Site con todo el código fuente.

¿Listo para empezar?

Descarga la prueba gratuita y empieza a crear interfaces web en Delphi, C++ Builder y .NET.