약간의 문제가 있는 뜻...
1. 이미 정해진 폴더와, 파일명이 있다면 굳이 SaveDialog를 사용할 필요가....
2. StringList에 값을 넣었다가 Text로 다시 저장 한다면 Gauge의 사용에 부합하지 않을 것 같음.
AssignFile(ATextFile, 파일명)
{$I-} ReWrite(ATextFile); {$I+}
if IOResult <> 0 then
begin
MessageBox(Handle,'.......................
Exit;
end;
Gauge.MaxValue := RowCount;
try
for i := 0 to RowCount - 1 do
begin
Writeln(ATextFile, Cells[1, t].AsString);
Gauge.Progress := i + 1;
end;
finally
CloseFile(ATextFile);
end;
신민철 님이 쓰신 글 :
: 안녕하세요 이제막 델파이 초입부분을 공부하고있는 신입직딩입니다.
:
: 다름이아니오라 SaveDialog 관련 질문 부탁드립니다 제가 회사에서 프로그램을 수정하고있는데
:
: 스트링그리드의 리스트를 TEXT파일로 저장하려해서 저장까지 구현을 했는데
:
: 저장 버튼을 누를시 '다른이름저장' 이팝업이 뜨지안고 만들어논 저장버튼을 누를시 자동으로 저장되게끔
:
: 만들고싶습니다.
:
: 저장버튼누를시 '다른이름 저장' 팝업을 안뜨게 할수있을까요? 부탁 드리겠습니다.^^
:
: 적용한 소스는
:
: ///////////텍스트파일 저장//////////////
: begin
: if grd_Good.RowCount = 0 then
: exit;
:
: if SaveDialog1.Execute then
: begin
: SourceFiles := TStringList.Create;
: Gauge.Visible := TRUE;
: Gauge.MinValue := 0;
: Gauge.MaxValue := 100;
: Gauge.Progress := 0;
:
: with grd_Good do
: begin
: for i := 0 to RowCount - 1 do
: begin
: Gauge.Progress := ROUND((t + 1)/RowCount * 100);
: SourceFiles.Add(Cells[1, t].AsString);
: end;
: end;
: begin
: SourceFiles.SaveToFile(DateToStr(dpk_Hoisu_Date.Date)+'_'+edtCustomerCode.Text+'.txt');
: MessageDlg(SaveDialog1.FileName + ' 에' + #13#10 + '저장되었습니다.', mtInformation, [mbOk], 0);
: SourceFiles.Free;
: Gauge.Visible := FALSE;
: end;
: end;
:
: 입니다.
: 새해 복많이 받으세요^^
|