IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

 
 Ответить  Открыть новую тему 
> Операциz с Savedialog
Mr.Dmitry
сообщение 27.04.2006 18:57
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 46
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  0  +


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

Сообщение отредактировано: Mr.Dmitry - 27.04.2006 18:58
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 27.04.2006 19:05
Сообщение #2


Гость






Что именно не получается? Само сохранение StringGrid-а, или выбор файла, в который будешь сохранять с использованием SaveDialog?
 К началу страницы 
+ Ответить 
Mr.Dmitry
сообщение 27.04.2006 19:10
Сообщение #3


Новичок
*

Группа: Пользователи
Сообщений: 46
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  0  +


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

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

Само сохранение. Лазил по всемучебникам но везде описано только открытие при помощи opendialog а сохранения нет!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 27.04.2006 19:15
Сообщение #4


Гость






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

Вот тут - загрузка/сохранение TStringGrid:
Сохранение/Загрузка TStringGrid
 К началу страницы 
+ Ответить 
Mr.Dmitry
сообщение 27.04.2006 19:29
Сообщение #5


Новичок
*

Группа: Пользователи
Сообщений: 46
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  0  +


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

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

Вот тут - загрузка/сохранение TStringGrid:
Сохранение/Загрузка TStringGrid


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

Сообщение отредактировано: Mr.Dmitry - 27.04.2006 19:32
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Романтик
сообщение 27.04.2006 19:32
Сообщение #6


Бывалый
***

Группа: Пользователи
Сообщений: 159
Пол: Мужской
Реальное имя: Anton

Репутация: -  0  +


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

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

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


--------------------
made in USSR.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Mr.Dmitry
сообщение 27.04.2006 19:39
Сообщение #7


Новичок
*

Группа: Пользователи
Сообщений: 46
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  0  +


Большое всем спасибо!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Mr.Dmitry
сообщение 27.04.2006 19:52
Сообщение #8


Новичок
*

Группа: Пользователи
Сообщений: 46
Пол: Мужской
Реальное имя: Дмитрий

Репутация: -  0  +


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

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

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

Сообщение отредактировано: Mr.Dmitry - 27.04.2006 19:59
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
hardcase
сообщение 27.04.2006 21:10
Сообщение #9


code warrior
****

Группа: Пользователи
Сообщений: 484
Пол: Мужской
Реальное имя: Славен

Репутация: -  8  +


Код

// сохраняет сетку
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;


Сообщение отредактировано: hardcase - 27.04.2006 21:18


--------------------
ИзВ ин ИтЕ зА нЕ рОв НЫй П оч ЕРк
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 27.04.2006 21:32
Сообщение #10


Гость






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

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

P.S. Еще одна попытка использовать "метод попугая" и начать опять повторять, что тебе нужно сохранить через SaveDialog - тема улетает в мусорку. Все.
 К началу страницы 
+ Ответить 
J1nn
сообщение 13.03.2008 11:26
Сообщение #11


Гость






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

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 13.07.2025 5:49
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"