Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 05.09.2018, 09:48   #11
Astrola
 
Регистрация: 04.09.2018
Сообщений: 6
Репутация: 10
По умолчанию

Всем спасибо. Буду пробовать вариант от Аватара, придется немного подкоректировать его.
Astrola вне форума   Ответить с цитированием
Старый 13.09.2018, 10:43   #12
Astrola
 
Регистрация: 04.09.2018
Сообщений: 6
Репутация: 10
По умолчанию

Аватар, (если не трудно) можете изменить свой код под стринггриды.
У меня он обрастает ненужными циклами, долго пытался но не осилил, к примеру строка "for ti:=Low(p) to High(p) do begin" у меня после переписания создает ещё два цикла для перебора столбцов и строк стринггрида в итоге опять запутался в циклах.
Сам код вроде понятный, но когда переписываю под таблицы путаюсь в параметрах.
Astrola вне форума   Ответить с цитированием
Старый 13.09.2018, 10:48   #13
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,373
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Сделайте функцию, которая просто принимает список слов (или что там у вас) и возвращает список с результатами (TStringList, ...) без всяких GUI компонентов.

Потом вызывайте ее и записывайте результат в стрингрид или куда там вам надо.
Alex11223 на форуме   Ответить с цитированием
Старый 13.09.2018, 10:51   #14
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,613
Репутация: 5352
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Сделайте функцию, которая просто принимает список слов (или что там у вас)
Так ему как раз это и надо - получить заданные списки слов.


Цитата:
Сообщение от Astrola Посмотреть сообщение
Сам код вроде понятный, но когда переписываю под таблицы путаюсь в параметрах.
Не переписывайте код под таблицы.
Напишите код, который объявляет динамические массивы и заполняет их данными из StringGrid.
Потом вызывайте код (с) Аватар и передавайте ему подготовленные массивы.
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 13.09.2018, 11:17   #15
Astrola
 
Регистрация: 04.09.2018
Сообщений: 6
Репутация: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Так ему как раз это и надо - получить заданные списки слов.



Не переписывайте код под таблицы.
Напишите код, который объявляет динамические массивы и заполняет их данными из StringGrid.
Потом вызывайте код (с) Аватар и передавайте ему подготовленные массивы.
а насколько это будет правильно, копировать данные которые уже есть в таблице в массив (это ещё циклы) а потом обрабатывать его циклами, когда можно сразу обрабатывать данные напрямую из таблиц?
Astrola вне форума   Ответить с цитированием
Старый 13.09.2018, 11:30   #16
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 17,373
Репутация: 3353

icq: 512-765
skype: alexp.frl
По умолчанию

Примерно на 100500 раз "правильнее", чем обращаться к GUI компонентам везде.
Например не придется переписывать основную логику если вдруг понадобится не стрингрид, или сразу разные компоненты, или вообще не GUI.
И проще читать/писать код, меньше риск ошибки.
И проще тестировать автоматическими тестами.
Ну и в некоторых случаях работа с GUI компонентами может быть просто медленнее (например если много раз читать одно и то же оттуда или писать туда временные/промежуточные данные).
Alex11223 на форуме   Ответить с цитированием
Старый 13.09.2018, 11:55   #17
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,083
Репутация: 6385
По умолчанию

Цитата:
динамические массивы
только учти - индексация в динамических массивах с 0, а у тебя в правилах индексы колонок с 1. Только поэтому массивы объявлял с 1

зы

да, и for ti:=Low(p) to High(p) do это цикл по строкам. Откуда там еще два цикла?
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 13.09.2018 в 12:38.
Аватар на форуме   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перебор вариаций в двомерном масиве KotKod Microsoft Office Excel 3 20.02.2016 10:33
Генератор слов на кириллице Fedaykin Фриланс 2 09.11.2013 18:30
генератор слов Delphi7 -Jack- Общие вопросы Delphi 10 29.06.2012 19:55
Генератор слов!создание вопросы . kzmd Общие вопросы Delphi 15 16.10.2010 20:04
Генератор слов - что к чему? Ramal Общие вопросы Delphi 8 16.07.2009 01:11


17:52.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru