Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Операциz с Savedialog

Автор: Mr.Dmitry 27.04.2006 22:57

Народ не знаю уже что делать вcе перепробовал.Мне нужно сохранить таблицу stringgrid при помощи savedialog!
Пожалуйсто помогите очень нужно?

Автор: volvo 27.04.2006 23:05

Что именно не получается? Само сохранение StringGrid-а, или выбор файла, в который будешь сохранять с использованием SaveDialog?

Автор: Mr.Dmitry 27.04.2006 23:10

Цитата(volvo @ 27.04.2006 19:05) *

Что именно не получается? Само сохранение StringGrid-а, или выбор файла, в который будешь сохранять с использованием SaveDialog?

Само сохранение. Лазил по всемучебникам но везде описано только открытие при помощи opendialog а сохранения нет!

Автор: volvo 27.04.2006 23:15

Не путай понятия! С помощью OpenDialog ты ничего загрузить не можешь... Ты можешь только выбрать откуда загружать...

Вот тут - загрузка/сохранение TStringGrid:
http://forum.sources.ru/index.php?showtopic=65061

Автор: Mr.Dmitry 27.04.2006 23:29

Цитата(volvo @ 27.04.2006 20:15) *

Не путай понятия! С помощью OpenDialog ты ничего загрузить не можешь... Ты можешь только выбрать откуда загружать...

Вот тут - загрузка/сохранение TStringGrid:
http://forum.sources.ru/index.php?showtopic=65061


Так я и пешу что везде описано открытие при помощи opendialog а сохранение при помощи savedialog не где нет!
Кстати на твою ссылку меня не пускают!

Автор: Романтик 27.04.2006 23:32

Цитата(Mr.Dmitry @ 27.04.2006 20:29) *

Кстати на твою ссылку меня не пускают!

сори за оффтоп:
зарегистрироваться просто надо. yes2.gif

Автор: Mr.Dmitry 27.04.2006 23:39

Большое всем спасибо!

Автор: Mr.Dmitry 27.04.2006 23:52

Цитата(Mr.Dmitry @ 27.04.2006 19:29) *

Так я и пешу что везде описано открытие при помощи opendialog а сохранение при помощи savedialog не где нет!
Кстати на твою ссылку меня не пускают!

Появилось несколько вопросов!
1. Мне нужно сохранить stringgrid при помощи savedilog!
2. код загрузки по данной ссылки не работает!

Автор: hardcase 28.04.2006 1:10

Код

// сохраняет сетку
procedure SaveGrid(Grid: TStringGrid; const FileName: string);
  var F: text;
      i,j: integer;
      RowCount, ColCount: integer;
  begin
    AssignFile(F, FileName);
    Rewrite(F);
    try
      RowCount:=Grid.RowCount;
      ColCount:=Grid.ColCount;
      WriteLn(F, RowCount, ColCount);
      for i:=0 to RowCount-1 do
        with Grid.Rows[i] do
        for j:=0 to ColCount-1 begin
            WriteLn(F, Strings[j]);
        end;
    finally
      CloseFile(F);
    end
  end;

// загружает сетку
procedure LoadGrid(Grid: TStringGrid; const FileName: string);
  var F: text;
      i,j: integer;
      RowCount, ColCount: integer;
      s: string;
  begin
    AssignFile(F, FileName);
    Reset(F);
    try
      ReadLn(F, RowCount, ColCount);
      Grid.RowCount:=RowCount;
      Grid.ColCount:=ColCount;
      for i:=0 to RowCount-1 do
        with Grid.Rows[i] do
        for j:=0 to ColCount-1 begin
            ReadLn(F, s);
            Strings[j]:=s;
        end;
    finally
      CloseFile(F);
    end;
  end;

...

// а так нужно использовать СэйвДиалог
if SaveDialog1.Execute then begin
      SaveGrid(StringGrid1, SaveDialog1.FileName);
end;

Автор: volvo 28.04.2006 1:32

Mr.Dmitry, ПОТРУДИСЬ объяснить мне кое что. Ты предыдущие посты что, игнорируешь? Тебе русским языком объясняют, что НЕ МОЖЕШЬ ты ничего сохранить через SaveDialog !!! Точка! Ты можешь ТОЛЬКО задать имя файла. Это ясно? Или тебе на пальцах объяснить, для чего SaveDialog предназначен?

Во-вторых. Ты знаешь, я не принимаю ТАКОЙ аргументации:

Цитата
2. код загрузки по данной ссылки не работает!
Если ты решил что-то опревергать - приведи свой проект, с исходными данными, и ЖЕЛАЕМЫМ тобой результатом. Темы в FAQ НИГДЕ без тестов и проверки не добавляют... Может ты просто читать не умеешь и накосячил где-то? Здесь телепатов НЕТ, заруби себе это на носу!

P.S. Еще одна попытка использовать "метод попугая" и начать опять повторять, что тебе нужно сохранить через SaveDialog - тема улетает в мусорку. Все.

Автор: J1nn 13.03.2008 15:26

а объясните мне на пальцах ,если не трудно,для чего сейв дайлог? wub.gif