GARANTIR DESCONTO

Fórum StringList (Adicionar linhas no memo) #465840

05/01/2014

0

Bom dia pessoal,

não estou conseguindo adicionar as linhas no Memo, como sou iniciante tô apanhando muito ...rssrs

olha o código:

unit Unit1;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.Buttons;

type
TForm1 = class(TForm)
BitBtn1: TBitBtn;
Label1: TLabel;
Edit1: TEdit;
Memo1: TMemo;
OpenDialog1: TOpenDialog;
Button2: TButton;
procedure BitBtn1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.BitBtn1Click(Sender: TObject);

begin
if OpenDialog1.Execute then
begin
OpenDialog1.FileName;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
Lista : TStringList;
ind : integer;

begin

try
Lista := TStringList.Create;
Lista.LoadFromFile(OpenDialog1.filename);
for ind:= 0 to Lista.Count-1 do
memo1.Clear;
memo1.Refresh;
Memo1.lines.Add(Lista[ind]);

finally
Lista.Free;
Lista:=nil;
end;
end;

end.


por favor me deem alguma dica.

Abraço
Infocom Ltda

Infocom Ltda

Responder

Posts

06/01/2014

Douglas

IFOCOM, Faça tudo em um botão. Abaixo eu fiz algumas alterações no seu código, para que você possa
adicionar ao memo os dados que vem do arquivo linha por linha.

procedure TForm1.Button2Click(Sender: TObject);
var
Lista : TStringList;
i        :  integer;

begin

//SE O OPENDIALOG NÃO FOR EXECUTADO ELE PARA.
if not OpenDialog1.Execute then
exit;

try
Lista := TStringList.Create;
Lista.LoadFromFile(OpenDialog1.filename);


memo1.Clear; //LIMPA O MEMO ANTES DE INSERIR OS DADOS.
for i := 0 to Lista.Count-1 do
Memo1.lines.Add(Lista[i]);//ADICIONA OS DADOS DO ARQUIVO LINHA POR LINHA NO MEMO.

finally
FreeAndNil(Lista);//DESTROI O OBJETO EM MEMORIA.
end;
end;


end.


Aguardo o seu feedback e espero ter entendido sua necessidade.
Responder

Gostei + 0

06/01/2014

Infocom Ltda

Ok valeu amigo.

Obrigadão
Responder

Gostei + 0

06/01/2014

Douglas

Precisando estou sempre aqui amigo.
Responder

Gostei + 0

06/01/2014

Alan Souza

só uma sugestão para evitar o for:

procedure TForm1.Button2Click(Sender: TObject);
var
  Lista : TStringList;
begin
  if OpenDialog1.Execute then
  begin
 
  try
    Lista := TStringList.Create;
    Lista.LoadFromFile(OpenDialog1.filename);
    memo1.Clear;  
    memo1.Lines := Lista;
 
  finally
    FreeAndNil(Lista);//DESTROI O OBJETO EM MEMORIA.
  end;
  end;
end;
 
end.
Responder

Gostei + 0

06/01/2014

Douglas

só uma sugestão para evitar o for:

procedure TForm1.Button2Click(Sender: TObject);
var
  Lista : TStringList;
begin
  if OpenDialog1.Execute then
  begin
 
  try
    Lista := TStringList.Create;
    Lista.LoadFromFile(OpenDialog1.filename);
    memo1.Clear;  
    memo1.Lines := Lista;
 
  finally
    FreeAndNil(Lista);//DESTROI O OBJETO EM MEMORIA.
  end;
  end;
end;
 
end.


alanps, obrigado pelo reforço. Nem me atentei a isto, pois já que ele quer pegar tudo que esta na lista
não precisa do FOR.
Responder

Gostei + 0

07/01/2014

Infocom Ltda

Pessoal estou estudando delphi e preciso fazer um buscador:


vou tentar te explicar e vou te mandar o codigo, que estou montando,
dai parei, nem sei pra onde ir..rsrsrs

arquivo txt: 021012154141544016810333

Vou digitar na tela de pesquisa:

Digitar Palavra chave desejada: 10
Digitar Valor do alvo desejado: 15
Quantidade de caracteres depois do alvo: 3
Contar quantas palavras chaves.


Mostrar Tmemo, isso eh sugestão. (pode ser)

Quantos cliques até chegar ao alvo: 2, 7, etc
Numeros depois do alvo: 414 = 440 etc
quantas palavras chaves no arquivo: 2


Vc pode me ajudar, com Stringlist e berm mais rápido, por isso postei aquela duvida.

Agradeço de montão, pelo menos por onde começo.

Obrigado ao seu empenho.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar