Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2013, 21:29   #1
Dotha
Пользователь
 
Аватар для Dotha
 
Регистрация: 12.08.2009
Сообщений: 26
Лампочка Загрузка двух txt в один StringGrid

Здравствуйте, господа программисты!

Ни как не могу справиться, помогите пожалуйста.

на форме: ComboBox1, ComboBox2, StringGrid1.

с первого ComboBox1 загружаем из 1.txt в StringGrid1,
со второго ComboBox2 загружаем из 2.txt в StringGrid1.
Код:
procedure TForm2.FormCreate(Sender: TObject);
var
ZagruzkaMenu1, ZagruzkaMenu2 :TStringList;

begin
  ZagruzkaMenu1:=TStringList.Create;
  ZagruzkaMenu1.LoadFromFile('bases\menu1.txt');
  ComboBox1.Items:=ZagruzkaMenu1;
  ZagruzkaMenu1.Free;
  
  ZagruzkaMenu2:=TStringList.Create;
  ZagruzkaMenu2.LoadFromFile('bases\menu2.txt');
  ComboBox2.Items:=ZagruzkaMenu2;
  ZagruzkaMenu2.Free;
end;


procedure TForm2.LoadGrid1;
var
  f: textfile;
  temp, x, y: integer;
  tempstr: string;
begin

  assignfile(f, 'bases\'+ ComboBox1.text);
  reset(f);
  readln(f, temp);
  StringGrid1.colcount := temp;
  readln(f, temp);
  StringGrid1.rowcount := temp;
  for X := 0 to StringGrid1.colcount - 1 do
    for y := 0 to StringGrid1.rowcount - 1 do
    begin
      readln(F, tempstr);
      StringGrid1.cells[x, y] := tempstr;
    end;
    closefile(f);

end;

procedure TForm2.ComboBox1Change(Sender: TObject);

begin
LoadGrid1;
end;

procedure TForm2.ComboBox2Change(Sender: TObject);

begin
LoadGrid2;
end;

procedure TForm2.LoadGrid2;
var
  f: textfile;
  temp, x, y: integer;
  tempstr: string;
begin

  assignfile(f, 'bases\'+ ComboBox2.text);
//Что здесь писать понятия не имею
//надо посмотреть сколько StringGrid1.rowcount уже заполнено 
//и начать запись со следующего StringGrid1.rowcount
end;
Пожалуйста, помогииииите!
Dotha вне форума Ответить с цитированием
Старый 25.08.2013, 23:58   #2
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Столбцов столько же будет? Если да, то добавь переменную для запоминания откуда начинать, затем заполняй таблицу почти также. С минимальными изменениями будет так
Код:
begin
  OldRowCount := StringGrid1.rowcount;
  assignfile(f, 'bases\'+ ComboBox2.text);
  ...
  StringGrid1.rowcount := temp+OldRowCount;
  for X := 0 to StringGrid1.colcount - 1 do
    for y := OldRowCount to StringGrid1.rowcount - 1 do
    ...
eoln вне форума Ответить с цитированием
Старый 26.08.2013, 07:19   #3
Slym
Участник клуба
 
Регистрация: 07.12.2011
Сообщений: 1,025
По умолчанию

для начала:
Код:
procedure TForm2.FormCreate(Sender: TObject);
begin
  ComboBox1.Items.LoadFromFile('bases\menu1.txt');
  ComboBox2.Items.LoadFromFile('bases\menu2.txt');
end;
Не стесняемся, плюсуем!
Slym вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из двух один, но лучше ksandrj Компьютерное железо 0 07.11.2011 11:29
загрузка txt в exel Nick_odessa Microsoft Office Excel 18 03.02.2011 16:51
Загрузка содержимого txt в ListView Rendll Компоненты Delphi 2 26.03.2009 11:04
*.txt несколько в один-результирующий. Koleso Общие вопросы Delphi 6 08.03.2009 23:55
Загрузка .txt файлов TriCERATOP Помощь студентам 2 18.11.2008 11:17