Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-05-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.333
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
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.
Archivos Adjuntos
Tipo de Archivo: zip Components To String.zip (4,6 KB, 17 visitas)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #2  
Antiguo 17-05-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.333
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Acabo de ver este hilo, donde se habla de esta misma función y creo que incluso hay una versión mejorada para guardar los compoennetes que pertenecen a otro.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 17-05-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Neftali
Acabo de ver este hilo
¿A cuál hilo te refieres?

// Saludos
Responder Con Cita
  #4  
Antiguo 17-05-2007
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.333
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por roman
¿A cuál hilo te refieres?

Este.

¡¡Qué cabeza la mía...!!
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #5  
Antiguo 17-05-2007
Avatar de anubis
anubis anubis is offline
Miembro
 
Registrado: mar 2007
Posts: 863
Poder: 18
anubis Va por buen camino
gracias por las respuestas, la verdad que de momento lo de stream es un poco complicado, porque solo me interesa guardar la posicion left y top puesto que no se permite resize.Encontre esta page buscando, por si a alguien le sirve

http://www.galeon.com/roberdi/PagDel...ticulos.htm#21

ahi lo explica bastante bien Ademas tiene mas cosas.

gracias
Responder Con Cita
  #6  
Antiguo 31-08-2017
Avatar de makina
makina makina is offline
Miembro
 
Registrado: oct 2005
Ubicación: Mexico DF.
Posts: 27
Poder: 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
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
No cerrar hasta guardar cambios mario2000 API de Windows 3 05-05-2007 19:27:06
Guardar cambios con componente TTable desve Tablas planas 1 26-04-2006 01:05:19
Guardar los cambios de componentes nuevos oesteve OOP 5 20-12-2005 21:08:54
Guardar Cambios DBgrid con CheckBox toorbye Varios 0 22-09-2005 12:57:55
Guardar cambios en tiempo d Ejecución kwan Varios 5 30-12-2003 23:24:48


La franja horaria es GMT +2. Ahora son las 12:20:53.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi