Ver Mensaje Individual
  #11  
Antiguo 31-08-2017
Avatar de makina
makina makina is offline
Miembro
 
Registrado: oct 2005
Ubicación: Mexico DF.
Posts: 27
Reputación: 0
makina Va por buen camino
Como crear la forma a partir del texto generado con el Twritecomponent

Hola Neftali. este ejemplo fue de mucha ayuda, gracias.
por otro lado tengo la necesidad de "re-crear" la forma y sus componentes a partir del texto generado con la función que utilizas en el ejemplo.

es decir. una vez generado el texto poderlo guardar y en tiempo de ejecución y dependiendo de las necesidades de la aplicación y el usuario se pueda "llamar" a esta forma re-creandola a partir del texto.

Muchas Gracias por anticipado.


Cita:
Empezado por Neftali Ver Mensaje
Existe la opción "manual", que se puede hacer con un TIniFile o con un fichero de Texto (y un memo -SaveToFile-) y sería guardando líneas con los nombres de las propiedades y sus valores.

Una alternativa más automática, pero que guarda TODAS las propiedades, no sólo las que tú necesites es utilizar WriteComponent de los Streams.

Creo que esta función ya ha salido antes en los foros; También puedes encontrarla aquí. Es para obtener justo el textoque has colocado en tu mensaje.

Código Delphi [-]
function ComponentToString(Component: TComponent): string;
var
  BinStream:TMemoryStream;
  StrStream: TStringStream;
  s: string;
begin
  BinStream := TMemoryStream.Create;
  try
    StrStream := TStringStream.Create(s);
    try
      BinStream.WriteComponent(Component);
      BinStream.Seek(0, soFromBeginning);
      ObjectBinaryToText(BinStream, StrStream);
      StrStream.Seek(0, soFromBeginning);
      Result:= StrStream.DataString;
    finally
      StrStream.Free;

    end;
  finally
    BinStream.Free
  end;
end;

Te adjunto un ejemplo de cómo utilizarla.
Responder Con Cita