GARANTIR DESCONTO

Fórum Salvar e Salvar como #183288

20/09/2003

0

Olá;
Eu fiz um simples editor de texto, mas o botão salvar eu não estou conseguindo...
o codigo é essse?

[b:263393ed6e]if SaveDialog1.Execute then
begin
Memo1.Lines.SaveToFile(SaveDialog1.Name);
end;[/b:263393ed6e]

ele salva so q sem extensão e com o nome SaveDialog1 mesmo se colocar o nome pra salvar. e o salvar sem abrir caixa de dialogo? como eu faço?

Obrigado,


Reloaded`

Reloaded`

Responder

Posts

20/09/2003

Mathac_admin

Querido amigo,

Qdo vc salvar um arq é bom declarar uma var pública como string (ex.: Cam : String;) daí vc coloca o caminho do arq na var Cam depois q vc salvou (ou abriu) o arq. Aí o código ´Salvar Como...´ vai ficar assim:

[b:62c85e3d79]if SaveDialog1.Execute then
begin
Memo1.Lines.SaveToFile(SaveDialog1.Name);
Cam := SaveDialog1.FileName; [i:62c85e3d79]{mudou aqui (não lembro se é FileName ou Name}[/i:62c85e3d79]
end; [/b:62c85e3d79]

Aí no código do ´Salvar Direto´ vc coloca o código:

[b:62c85e3d79]procedure ..
begin
Memo1.Lines.SaveToFile(Caminho);
end;[/b:62c85e3d79]

Espero ter ajudado.

Falou!!!


Responder

Gostei + 0

20/09/2003

Reloaded`

[b:26e781ea28]mathac_admin[/b:26e781ea28]

olha, a estrutura seria mais ou menos assim

[b:26e781ea28][color=red:26e781ea28][BOTÃO SALVAR][/color:26e781ea28][/b:26e781ea28]

[color=blue:26e781ea28][u:26e781ea28]SE O DOCUMENTO AINDA NÃO FOI SALVO, ENTÃO ABRE UM CAIXA PARA INDICAR O CAMINHO A SER SALVA, SE O DOCUMENTO JA FOI SALVA, ENTÃO ELE VAI SAR POR CIMA DELE (ATUALIZANDO).[/u:26e781ea28][/color:26e781ea28]

[color=red:26e781ea28][b:26e781ea28][SALVAR COMO][/b:26e781ea28][/color:26e781ea28]
[color=blue:26e781ea28]SO ABRIRÁ A CAIXA PARA INDICAR O CAMINHO[/color:26e781ea28]

é estilo word, notepad ...
vc me entende? alguem mais me ajuda?

Muito obrigado,


Responder

Gostei + 0

20/09/2003

Reloaded`

[b:b4bdc251ed]mathac_admin[/b:b4bdc251ed]

olha, a estrutura seria mais ou menos assim

[b:b4bdc251ed][color=red:b4bdc251ed][BOTÃO SALVAR][/color:b4bdc251ed][/b:b4bdc251ed]

SE O DOCUMENTO AINDA NÃO FOI SALVO, ENTÃO ABRE UM CAIXA PARA INDICAR O CAMINHO A SER SALVO, SE O DOCUMENTO JA FOI SALVO, ENTÃO ELE VAI SALVAR POR CIMA DELE (ATUALIZANDO).

[color=red:b4bdc251ed][b:b4bdc251ed][SALVAR COMO][/b:b4bdc251ed][/color:b4bdc251ed]
SO ABRIRÁ A CAIXA PARA INDICAR O CAMINHO

é estilo word, notepad ...
vc me entende? alguem mais me ajuda?

Muito obrigado,


Responder

Gostei + 0

21/09/2003

Alysson

Adicione:
* 1 Dialogo de salvar com nome Salvar
* 1 Tmemo com nome de Memo1;
* 3 Variáveis, não nas procedures, mas na Unit com o nome de

Modificado :Boolean;
Caminho:String;
Salvo:Boolean;


onMemo1Change
begin
modificado := True;
end;





SalvarClick
begin
if Modificado = True then Abort;

if salvo = True then
begin
Memo1.lines.savetofile(caminho);
end
else
if salvar.execute then
begin

Memo1.lines.savetofile(salvar.filename);
modificado := False;
caminho := salvar.filename;

end;


end;





OnSalvarComoCLick
begin

if salvar.execute then
begin
Memo1.lines.savetofile(salvar.filename);
modificado := False;
caminho := salvar.filename;
end;

end;




aew. tenta esse código...


Responder

Gostei + 0

21/09/2003

Reloaded`

[b:b4a96e6eb3]alysson[/b:b4a96e6eb3]
valew, mas naum funfo do jeito q eu keria
pq tipo, quando eu salvo, ele naum memoriza o endereço q salvei, se clica em salvar de novo, ele naum salva. so o salva q ta dificil o salvar como é tranquilo.

se vc puder me da uma mão tb, qd for fechar o programa ele tem perguntar se o usuario ker salvar seria assim:

[color=red:b4a96e6eb3][b:b4a96e6eb3]procedure TForm1.Sair1Click(Sender: TObject);
begin

if Memo1.Modified = true then
begin
if Application.MessageBox(´Deseja salvar o documento?´, ´Confirmação´, MB_ICONINFORMATION + MB_YESNO + MB_DEFBUTTON1)=idyes then;
begin
if salvar.Execute then
begin
Memo1.Lines.SaveToFile(salvar.FileName);
end
end
end
else
Form1.close;

end;[/b:b4a96e6eb3][/color:b4a96e6eb3]
valew dinovo[quote:b4a96e6eb3][/quote:b4a96e6eb3]


Responder

Gostei + 0

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

Aceitar