Ir para conteúdo
Fórum Script Brasil
  • 0

Salvando o ultimo valor de um Edit


Arrais Júnior

Pergunta

15 respostass a esta questão

Posts Recomendados

  • 0

exemplo:

procedure TForm1.Button1Click(Sender: TObject);
var Line : string; num : integer; Arquivo : TextFile;
begin
   // LER O CONTEUDO DO ARQUIVO DADOS.TXT
   num := 0;
   AssignFile(Arquivo, 'C:\DADOS.txt');
   Reset(Arquivo);
   while not EOF(Arquivo) do
      begin
         num := num + 1;
         Readln(Arquivo, Line);
         if num = 1 then
            edit1.Text := Line;
      end;
   CloseFile(Arquivo);
end;

procedure TForm1.Button2Click(Sender: TObject);
var Line : string; Arquivo : TextFile;
begin
   // SALVAR O CONTEUDO DO EDIT1 NO ARQUIVO DADOS.TXT
   Line := Edit1.Text;
   AssignFile(Arquivo, 'C:\DADOS.txt');
   Rewrite(Arquivo);
   Writeln(Arquivo, Line);
   CloseFile(Arquivo);

   showmessage('Conteudo do Edit1 foi salvo!');
   Edit1.Clear;
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

vlws jhonas...

aproveitando o tópico...

alguém pode me dar uma luz de como eu posso fazer tipo um maskedit neste formato: primeiro (01), dois (02), três (03).........e trinta e um (31)...sendo que eles vão corresponder ao dia do mês...

exemplo...eu abro o programa e nesse Edit ou MaskEdit apareça automaticamente o dia do mês nesse formato ai que falei...

uma luz jhonas =D

vlws..

Link para o comentário
Compartilhar em outros sites

  • 0

para colocar a data no maskedit, faz assim:

MaskEdit1.Text:= DateToStr(date);

para colocar a mascara no formato de data "DD/MM/AAAA", faz assim '!99/99/9999;1;_'... onde esse 1 no final, indica se você quer gravar o formato também junto no seu banco de dados... '01/01/2011'... se for 0, ele salva só os números da data '01012011'...

espero ter ajudado...

Link para o comentário
Compartilhar em outros sites

  • 0

então, ao invés de colocar essa data num maskedit, coloca num label, por exemplo, fazendo assim:

Label1.Caption:= FormatDatetime('dddd , dd " de " mmmm" de "yyyy',Date);

ve se fica do seu gosto...

espero ter ajudado...

caso a dica acima não servir, siga esse link abaixo e faça uma função que retorna a data por extenso...

http://www.planetadelphi.com.br/dica/6111/...ano-por-extenso

Link para o comentário
Compartilhar em outros sites

  • 0

a respeito de salvar os dados do edit no txt...

deu certo ...tudo beleza...

porém, preciso implementar isso em um memo também....ok..tudo certo...o problema é que ele só salva e faz a leitura da primeira linha...

var Line : string; num : integer; Arquivo : TextFile;
begin
   // LER O CONTEUDO DO ARQUIVO DADOS.TXT
   num := 0;
   AssignFile(Arquivo, 'DADOS\CABECALHO.txt');
   Reset(Arquivo);
   while not EOF(Arquivo) do
      begin
         num := num + 1;
         Readln(Arquivo, Line);
         if num = 1 then
            Memo1.Text := Line;
      end;
   CloseFile(Arquivo);
end;

sabe como fazer para que ele salve e leia toda as linhas?

Link para o comentário
Compartilhar em outros sites

  • 0

você pode usar a mesma lógica, só que você deverá agora, não percorrer todo o arquivo texto e sim, o conteúdo do memo... tenta fazer assim:

var

x: integer;

begin

for x := 0 to Memo1.Lines.count - 1 do

begin

VariavelTexto:= Memo1.Text;

//faça outros tratamentos que desejar... isso tudo linha a linha do memo

end;

end;

Link para o comentário
Compartilhar em outros sites

  • 0

exemplo com Memo

procedure TForm1.Button1Click(Sender: TObject);
var Line : string; Arquivo : TextFile;
begin
   // LER O CONTEUDO DO ARQUIVO DADOS.TXT
   AssignFile(Arquivo, 'C:\DADOS.txt');
   Reset(Arquivo);
   while not EOF(Arquivo) do
      begin
         Readln(Arquivo, Line);
         Memo1.Lines.Append(Line);
      end;
   CloseFile(Arquivo);
end;

procedure TForm1.Button2Click(Sender: TObject);
var Line : string; Arquivo : TextFile;
begin
   // SALVAR O CONTEUDO DO MEMO1 NO ARQUIVO DADOS.TXT
   Line := Memo1.Lines.Text;
   AssignFile(Arquivo, 'C:\DADOS.txt');
   Rewrite(Arquivo);
   Writeln(Arquivo, Line);
   CloseFile(Arquivo);

   showmessage('Conteudo do Memo1 foi salvo!');
   Memo1.Clear;
end;

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

jhonas....muito obrigado mesmo...eu procurei saber como fazia mais não tava conseguindo...vlws

uma dúvida...tou usando isso para salvar

SaveDialog1.InitialDir := 'salvos';
if SaveDialog1.Execute then
richedit1.Lines.SavetoFile(Edit2.Text + ' - ' + Edit8.Text);

só que abre a caixa de diálogo perguntando o nome e tals...ai eu tenho que por um nome....acaba que saindo do padrão...

não tem como eu apenas apertar no botão e salvar sem perguntar nada...sem perguntar a pasta...sem perguntar mais nomes....etc...???

Link para o comentário
Compartilhar em outros sites

  • 0

supondo que no Edit2 esteja o caminho para a pasta ... exemplo: 'C:\Dados\'

e o Edit8 esteja o nome do arquivo .... exemplo: 'Cabecalho.txt'

ficaria assim

procedure TForm1.Button1Click(Sender: TObject);
begin
   richedit1.Lines.SavetoFile(Edit2.Text + Edit8.Text);  // 'C:\Dados\Cabecalho.txt'
end;

este comando salvaria o arquivo Cabecalho.txt no drive C: na pasta Dados com o conteudo do RichEdit

abraço

Link para o comentário
Compartilhar em outros sites

  • 0

mais uma vez, obrigado jhonas....sempre de pronto para atender os noobs do delphi... =D

obrigadao..

ficou assim o meu:

richedit1.Lines.SavetoFile('salvos\' + LABEL20.Caption + ' - ' + Edit8.Text + ' - ' + StringReplace(DateToStr(Date), '/', '.', [rfReplaceAll]) + '.doc');

mais um coisinha que não estava prevista....

tipo..eu tenho um texto padrão em um richedit que é montado atraves de substituições...exemplo

[[RICHEDIT]]

CABEÇALHO*

TEXTO*

ASSINATURAS*

sendo que o nome CABEÇALHO* é subistituido pelo o que for digitado em um memo1

a palavra TEXTO é substituida pelo o que for digitado em um memo2

a palavra assinatura é substituida pelo o que foi digitado em um richedit2

...ao problema...o método de substituião tah legal..ta tudo beleza, só que eu queria DELETAR todas as linhas em branco que ficam no final do texto do memo1, memo2 e richedit2...porque se não fica uma distancia muito grande entre o CABEÇALHO*, TEXTO* e ASSINATURAS*

não sei se ficou dificil de entender o que eu tou querendo dizer....caso tenha ficado complicado...eu explico mais detalhadamente e posto fotos...

simplificando...eu queria um cod que deletasse toda linha vazia no final do texto...

Editado por Arrais Júnior
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...