| 
| 
 | Вопрос # 4 141/ вопрос открыт / | 
 |  Доброго времени суток, уважаемые эксперты!У меня такой вопрос к вам!
 У меня есть код, для открытия файла в StringGrid:
 Но, мне надо дописать его для стобца j! Я пробовала, но он открывает все числа в i-ом стобце!Помогите пожалуйста!
 Приложение:Переключить в обычный режим procedure TForm1.N2Click(Sender: TObject);vari: integer;  beginIf OpenDialog1.Execute thenbeginfname:=OpenDialog1.FileName;  i:=0;While not Eof(InFile) doBeginReadln(InFile,InString);a[i]:= StrToInt(InString);stringGrid1.Cells[0,i]:=IntToStr(a[i]);i:=i+1;    end;
|  |   Вопрос задала: Alinka27 (статус: Посетитель)Вопрос отправлен: 11 мая 2010, 20:17
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: min@y™ Написал я тебе пример - загрузка текстового файла в TStringGrid, разделители - пробелы, количество строк и столбцов - любое. Учись, студентка. Прога в прицепе.Впредь учись правильно формулировать вопросы и не заниматься тупым копипастингом чужого кода в свои проекты.
 К ответу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки ответа)
 
 
|  | Ответ отправил: min@y™ (статус: Доктор наук)Время отправки: 11 мая 2010, 22:07
 Оценка за ответ: 5
 Комментарий к оценке: Спасибо вам огромное!!! |  
 Мини-форум вопросаВсего сообщений: 21; последнее сообщение — 13 мая 2010, 19:20; участников в обсуждении: 2. Страницы: [1] [2] [Следующая »]  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 20:34 [#1]:Индусский код детектед! 
 a[i]:= StrToInt(InString);
stringGrid1.Cells[0,i]:=IntToStr(a[i]);Ненавижу вопросы, где автор пишет то, чего не понимает, но зато просит найти в ЭТОМ ошибку. Вопрос номер РАЗ: что есть за массив "a"?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 11 мая 2010, 20:36 [#2]:Ну не зря же я вам пишу, значит не понимаю!Прошу у вас о помощи!Понимала бы, написала! |  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 20:44 [#3]: Цитата (Alinka27): Ну не зря же я вам пишу, значит не понимаю!Прошу у вас о помощи!Понимала бы, написала!  
 Я опытный программист с большим стажем. Но мне КАЖДЫЙ РАЗ приходится вбивать в мозги задающих вопросы: ПРАВИЛЬНО ФОРМУЛИРУЙ ВОПРОС, иначе будет опубликовано немеряно флуда и уйдёт ОЧЕНЬ много времени на решение вопроса.
 
 А вопрос твой надо было ставить так: "Как загрузить в TStringGrid (столбцов X, строк Y) вот этот текстовый файл (ссылка на файл)".
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 11 мая 2010, 20:48 [#4]:Я в вашем сайте первый день, извините, что не правильно сформулировала свой вопрос! Я не опытный программист! Только учусь, мне это надо для курсовой! |  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 20:54 [#5]: Цитата (Alinka27): Я в вашем сайте первый день, извините, что не правильно сформулировала свой вопрос! Я не опытный программист! Только учусь, мне это надо для курсовой!  А ты знаешь ещё какие-нибудь знаки препинания, оканчивающие предложения, кроме "!"?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 11 мая 2010, 21:05 [#6]:Хоть вы и ОПЫТНЫЙ программист, вы не имеете ни какого права так мне писать, не хотите отвечать, удалите мой вопрос, я только студентка, до вас мне расти и расти.Спорить я с вами не хочу...Спасибо за такой развернутый ответ. |  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 21:11 [#7]: Цитата (Alinka27): Хоть вы и ОПЫТНЫЙ программист, вы не имеете ни какого права так мне писать Это почему же?
 
 Цитата (Alinka27): не хотите отвечать, удалите мой вопрос У меня нет таких полномочий.
 
 Цитата (Alinka27): Спорить я с вами не хочу...Спасибо за такой развернутый ответ. А я ответа и не давал, т.к. нет чётко сформулированного вопроса. Телепатов на этом сайте, как, впрочем, и на других, нету. Задай правльно вопрос - сразу получишь правильный ответ.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 21:30 [#9]:А что делать, если количество строк и/или столбцов в этом файле не будет соответствовать размерам StringGrid? Этот файл постоянный или меняется?
 Разделители в файле только пробелы?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | min@y™ (статус: Доктор наук), 11 мая 2010, 22:08 [#10]:Заметь: кроме меня в этот вопрос никто не полез. Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 12 мая 2010, 10:10 [#11]:Этот файл меняется, разделители только пробелы, строк может быть от 1 до 15, а стобцов только 2. |  
|   | min@y™ (статус: Доктор наук), 12 мая 2010, 10:20 [#12]: Цитата (Alinka27): Этот файл меняется, разделители только пробелы, строк может быть от 1 до 15, а стобцов только 2.  Ну вот и погоняй мой пример по разным файлам. Я его особо не отлаживал, но работать, вроде, должно.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 12 мая 2010, 10:29 [#13]:Да, он работает. |  
|   | Alinka27 (статус: Посетитель), 13 мая 2010, 16:06 [#14]:Здраствуйте!!! несколько дней тому назад вы мне дали код для загрузки текстового файла в StringGrid: http:https://www.delphi-int.ru/code/6ffe9b59. Всё нормально работает, но он не открывает нулевую строку.Я пробовала изменить ограничения, но результат такой же. Не подскажите где ошибка? |  
|   | min@y™ (статус: Доктор наук), 13 мая 2010, 17:35 [#15]: Цитата (Alinka27): но он не открывает нулевую строку А что такое "нулева строка"?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 13 мая 2010, 18:05 [#16]:StringGrid мой выглядит так http://files.mail.ru/4U1UP0?t=1, а мне надо открыть текстовый файл такого вида:http://files.mail.ru/PSXO0K Если пользоваться вашим кодом, то первая строка текстового файла откроется вместо Хфактор и Урезульт
 |  
|   | min@y™ (статус: Доктор наук), 13 мая 2010, 18:49 [#17]:Конечно. Этого в задании не было, я и сделал, как понял. Напоминает анекдот.
 Поймал мужик золотую рыбку. Загадал желание: "хочу член до земли". Рыбка отрубила ему ноги.
 Мораль: правильно формулируй задание.
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | min@y™ (статус: Доктор наук), 13 мая 2010, 18:56 [#18]:Никогда не правь чужой код, если не понимаешь, как он работает и что он делает. 
 procedure TMainForm.LoadGridFromFile(const FileName: string;
  AGrid: TStringGrid);
var
  Text, Words: TStringList;
  ARow: Integer;
begin
  // Загрузка текстового файла в TStringGrid.
  // Разделители - пробелы.
  // Пустые строки игнорируются
  Text:= TStringList.Create();
  Words:= TStringList.Create();
  try
    // Загрузка в память списка
    try
      Text.LoadFromFile(FileName);
 
      // Удаление пустых строк из списка
      for ARow:= Text.Count - 1 downto 0 do
        if Trim(Text[ARow]) = ''
          then Text.Delete(ARow);
    except
      Text.Clear();
      Application.MessageBox(PChar('Не могу загрузить файл "' + FileName + '".'),
                             PChar('Ошибка'),
                             MB_OK + MB_ICONERROR);
    end;
 
    if Text.Count = 0
      then Exit;
 
    // Формирование таблицы
    AGrid.RowCount:= Text.Count + 1; // Кол-во строк
    //AGrid.ColCount:= 1; // По умолчанию
 
    // Разбиение на столбцы
    for ARow:= 0 to Text.Count - 1 do
      begin
        SeparateWords(Text[ARow], Words);
 
        // Установка кол-ва столбцов по количеству найденных слов в текущей строке
        if Words.Count > AGrid.ColCount
          then AGrid.ColCount:= Words.Count;
 
        // Распределение слов строки файла по ячейкам строки таблицы
        AGrid.Rows[ARow + 1].Assign(Words);
      end;
  finally
    Text.Free();
    Words.Free();
  end;
end;Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  
|   | Alinka27 (статус: Посетитель), 13 мая 2010, 19:04 [#19]:Спасибо, огромное! Всё работает, вы меня спасли. P.S. Буду учится формулировать вопросы=)
 |  
|   | min@y™ (статус: Доктор наук), 13 мая 2010, 19:16 [#20]: Цитата (Alinka27): вы меня спасли Где моё пиво?
 Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп! |  Страницы: [1] [2] [Следующая »]  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |