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 06-11-2012
BioStudio BioStudio is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 15
Poder: 0
BioStudio Va por buen camino
y por ejemplo si el ListView1 lo tienes en el Form1, como puedes desde el Form2 guardar su contenido?
Responder Con Cita
  #2  
Antiguo 06-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por BioStudio Ver Mensaje
y por ejemplo si el ListView1 lo tienes en el Form1, como puedes desde el Form2 guardar su contenido?
Hola.


Form2:
Código Delphi [-]
...
implementation

uses Unit1; (* Form1 *)

procedure TForm2.btnGuardarListViewClick(Sender: TObject);
var
  i : Integer;
begin
  with TStringList.Create do
  try
    for i := 0 to Form1.ListView1.Items.Count-1 do
      Add(Form1.ListView1.Items[i].Caption +','+
          Form1.ListView1.Items[i].SubItems.CommaText);
    SaveToFile('archivo.txt')
  finally
    Free
  end
end;
...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 06-11-2012
BioStudio BioStudio is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 15
Poder: 0
BioStudio Va por buen camino
Gracias por toda la ayuda!

Use similar pero para agregar datos:

Código Delphi [-]
var
  Form3: TForm3;

implementation

uses umain;
{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
begin
// Agregar información a la Tabla.

with umain.Form1.ListView1.Items.Add do
    begin
      Caption := '2';            // Columna 0
      SubItems.Add( '1' );           // Columna 2
      SubItems.Add( 'MONITOR LG' );  // Columna 3
      SubItems.Add( '3' );           // Columna 4
      SubItems.Add( '230,45' );      // Columna 5
    end;
end;

end.
Responder Con Cita
  #4  
Antiguo 08-11-2012
BioStudio BioStudio is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 15
Poder: 0
BioStudio Va por buen camino
Si bien el codigo de ecfisa esta perfecto, el CSV se hace con ";" por ende simplemente modificamos:

Código Delphi [-]
Add(Form1.ListView1.Items[i].Caption +';'+ 
Form1.ListView1.Items[i].SubItems[0] +';'+ 
Form1.ListView1.Items[i].SubItems[1] +';'+ 
Form1.ListView1.Items[i].SubItems[2] +';'+ 
Form1.ListView1.Items[i].SubItems[3]);

Para 4 columnas.
Responder Con Cita
  #5  
Antiguo 08-11-2012
BioStudio BioStudio is offline
Miembro
NULL
 
Registrado: nov 2012
Posts: 15
Poder: 0
BioStudio Va por buen camino
Ahora por ejemplo le quise agregar el saveDialog pero no crea el archivo:

Código Delphi [-]
var
  i : Integer;
  saveDialog : TSaveDialog;    // Save dialog variable
begin
  saveDialog := TSaveDialog.Create(self);
  saveDialog.Title := 'Guarde su información';
  saveDialog.InitialDir := GetCurrentDir;
  saveDialog.Filter := 'CSV (Formato de texto separado por comas)|*.csv|';
  saveDialog.DefaultExt := 'csv';
  saveDialog.FilterIndex := 1;

  if saveDialog.Execute then //ShowMessage('Archivo : '+saveDialog1.FileName)
     saveDialog := TSaveDialog.Create(self);
      with TStringList.Create do
        try
          for i := 0 to umain.Form1.ListView1.Items.Count-1 do
            Add(Form1.ListView1.Items[i].Caption +';'+ 
            Form1.ListView1.Items[i].SubItems[0] +';'+ 
            Form1.ListView1.Items[i].SubItems[1] +';'+ 
            Form1.ListView1.Items[i].SubItems[2] +';'+ 
            Form1.ListView1.Items[i].SubItems[3]);
            ExtractFilePath(Application.ExeName);
          finally
          Free
      end
  else ShowMessage('Se ha cancelado el guardado del archivo.');
  saveDialog.Free;

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

end;
Responder Con Cita
  #6  
Antiguo 08-11-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola BioStudio.

Creo que te va a resultar mas simple de este modo:
Código Delphi [-]
....
var
  i : Integer;
begin
  ...
  with TStringList.Create do
  try
    for i := 0 to Form1.ListView1.Items.Count-1 do
      Add(Form1.ListView1.Items[i].Caption +','+
          Form1.ListView1.Items[i].SubItems.CommaText);
      Text := StringReplace(Text,',',';',[rfReplaceAll]);
    SaveToFile('archivo.txt')
  finally
    Free
  end
end;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #7  
Antiguo 08-11-2012
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
BioStudio,

Cita:
Empezado por BioStudio Ver Mensaje
Ahora por ejemplo le quise agregar el saveDialog pero no crea el archivo
Esta sentencia esta respetida 2 veces en tu código:
Código Delphi [-]
   saveDialog := TSaveDialog.Create(self);
Esta es una combinación de tu código con el de ecfisa:
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  i : Integer;
  saveDialog : TSaveDialog;

begin

  saveDialog := TSaveDialog.Create(self);
  saveDialog.Title := 'Respaldo de Archivo en Formato CSV';
  saveDialog.InitialDir := GetCurrentDir;
  saveDialog.Filter := 'CSV (Formato de texto separado por comas)|*.csv';
  saveDialog.DefaultExt := 'csv';
  saveDialog.FilterIndex := 1;

  if saveDialog.Execute then
  begin
     with TStringList.Create do
     try
        for i := 0 to Form1.ListView1.Items.Count-1 do
           Add(Form1.ListView1.Items[i].Caption +',' +
               Form1.ListView1.Items[i].SubItems.CommaText);
           Text := StringReplace(Text,',',';',[rfReplaceAll]);
           try
              SaveToFile(SaveDialog.FileName);
           except
              ShowMessage('Error en la Generación del Archivo CSV');
           end;
     finally
        free;
     end;
  end;

  saveDialog.Free;

end;
Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 08-11-2012 a las 05:45:40.
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
Problemas con DB + ListView mightydragonlor Varios 11 10-10-2008 16:23:30
Problemas con ListView ZayDun Varios 2 24-10-2007 22:14:56
Problemas al guardar HORA Sara Paz Varios 2 11-02-2007 12:36:09
problemas para guardar Guadalupe .NET 2 27-05-2006 01:58:45
Problemas con el TreeView y el ListView quake2420 Varios 5 11-08-2005 20:57:48


La franja horaria es GMT +2. Ahora son las 16:33:44.


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