![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Otra idea es almacenarlos en tablas o bien, si no quieres motores de bases de datos, en ficheros XML
|
|
#2
|
||||
|
||||
|
y porque todos en un solo archivo???
Tambien podes crear un archivo por cada memo, y valerte de los métodos SaveToFile y LoadFromFile de su propiedad lines....
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#3
|
|||
|
|||
|
Cita:
Un saludo Última edición por esocrates fecha: 21-03-2004 a las 14:39:50. |
|
#4
|
||||
|
||||
|
Bueno, no es exactamente una solucion.... pero en fin,.....
Las lmdtools hacen lo que quieres con el componente LmdstringList. Es un "TStringsList" de Tstrings que hace lo que deseas. Yo uso la version Freeware, LMDTOOLS V.6 Special Edition. Código:
LMDstr.LoadFromFile('c:\strings.txt');
grid.RowCount:= LMDstr.Items[0].Items.Count;
for i:=0 to LMDstr.Count-1 do
grid.Cols[i].Assign(LMDstr.Items[i].items);
Despues, cargo en cada columna, los datos de cada TString. SAludos |
|
#5
|
|||
|
|||
|
Cita:
Un saludo |
|
#6
|
||||
|
||||
|
Bueno.... en principio no sabia si usabas las LmdTools, así que puse un esbozo de como sería. A continuacion tienes algo mas serio.
Necesitas en un Form: - tres botones (Tbutton) - tres memos ( no hace falta que salgas a la calle a buscar ninguno..... con los de la paleta Standar de delphi ya vale )- Un componente TlmdStringList en tu formulario. - Un Label. Código:
procedure TForm1.Button1Click(Sender: TObject);
var i,j,k:Integer;
v : TLMDListItem;
begin
for k := 0 to 2 do // vamos a añadir 3 TlmdStringList
begin
j:= LMDStringList1.Add(v); // en j recogemos el indice del recien creado TlmdStringList
for i:= 0 to 2 do
LMDStringList1.Items[j].Items.Add('StringList nº ' + IntToStr(j)+ ' linea '+ IntToStr(i));
//añadimos varias lineas indicando en que Stringlist está y el nº de cada linea
// esto seria el contenido de cada memo
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
LMDStringList1.SaveToFile('c:\mismemos.txt'); // pos eso
end;
procedure TForm1.Button3Click(Sender: TObject);
var i:Integer;
begin
LMDStringList1.LoadFromFile('c:\mismemos.txt'); // pos vale, pos me alegro
label1.Caption := ' Total de TLmdStringList: '+IntToStr(LMDStringList1.Count);
// items[0] es el primer StringList Creado
// Items[0].items son las lineas de cada memo.
Memo1.Lines.Assign(LMDStringList1.Items[0].items);
Memo2.Lines.Assign(LMDStringList1.Items[1].Items);
Memo3.Lines.Assign(LMDStringList1.Items[2].Items);
end;
Da la casualidad que me hoy mismo he estado trabajando con este componente para guardar las columnas de un StringGrid en un único archivo, por eso te puse ese código mas bien rarito. Con este codigo no creo que tengas problemas, y si los tienes, ya sabes ![]() Saludos desde Lepe |
|
#7
|
||||
|
||||
|
Logicamente ese código es para empezar... despues tendrás que hacer algo más.
Por ejemplo, en lmdstringList1.items[0].Description puedes guardar... no sé, el TabIndex del tabSheet, y despues, al cargar el LMDStringList, accedes a esa propiedad, la conviertes a un nº entero, y creas la pagina del TabSheet, el memo, y por ultimo le asignas las Lineas. Espero haberme explicado. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|