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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 11.12.2010, 03:01   #1
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию Цикл StringGrid

Начал изучать Delphi недавно,пока только учусь все в проге сделал разобрался вот с циклами пока не очень получается.



Нужно брать значения с StringGrid1 с первой колонки начиная с первой строки(имя домена) и подсовывать его сюда YaTic1.URL:= с задержкой в 10 сек получаем параметры и вставляем их в 2,6,8 колонки и если после проверки параметров в колонке 2 в любой строке 0 то удаляем строку.

написал ручной способ работает вот с циклом не могу пока сделать
Код:
procedure TForm3.Button6Click(Sender: TObject);

var
CatInfo: TYaCaInfo;

begin

YaTic1.URL:=StringGrid1.Cells[1, 1];      //ссылка на домен
StringGrid1.Cells[2, 1]:=IntToStr(YaTic1.TIC); //выводим тыц
if YaTic1.inyaca then
StringGrid1.Cells[6, 1]:='в каталоге'   //ян каталог
else
StringGrid1.Cells[6, 1]:='Не в каталоге';

StringGrid1.Cells[8, 1]:=IntToStr(YaTic1.Rang); //ян ранг
CatInfo:=YaTic1.YacaInfo;     //

Последний раз редактировалось Stilet; 11.12.2010 в 09:46.
Aleksandr69 вне форума Ответить с цитированием
Старый 11.12.2010, 09:48   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Код:
var
CatInfo: TYaCaInfo;
i:integer;
begin
for i:=1 to StringGrid1.RowCount-1 do begin
YaTic1.URL:=StringGrid1.Cells[1, i];      //ссылка на домен
StringGrid1.Cells[2, i]:=IntToStr(YaTic1.TIC); //выводим тыц
if YaTic1.inyaca then
StringGrid1.Cells[6, i]:='в каталоге'   //ян каталог
else
StringGrid1.Cells[6, i]:='Не в каталоге';

StringGrid1.Cells[8, i]:=IntToStr(YaTic1.Rang); //ян ранг
CatInfo:=YaTic1.YacaInfo;     //
end;
Так что ли?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.12.2010, 15:40   #3
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию Timer1 цикл for

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
var
CatInfo: TYaCaInfo;
i:integer;
begin
for i:=1 to StringGrid1.RowCount-1 do begin
YaTic1.URL:=StringGrid1.Cells[1, i];      //ссылка на домен
StringGrid1.Cells[2, i]:=IntToStr(YaTic1.TIC); //выводим тыц
if YaTic1.inyaca then
StringGrid1.Cells[6, i]:='в каталоге'   //ян каталог
else
StringGrid1.Cells[6, i]:='Не в каталоге';

StringGrid1.Cells[8, i]:=IntToStr(YaTic1.Rang); //ян ранг
CatInfo:=YaTic1.YacaInfo;     //
end;
Так что ли?

так работает но пытается все сразу проверить ,ставил в конце таймер он все равно все сразу проверяет а потом задержка.

нужно после каждой подстановки YaTic1.URL: делать задержку и заполнять таблицу,короче каждый цикл должен быть с паузой 10 сек и выводом результатов в таблицу .Что бы было видно визуально что прога работает,строку проверил- вывел результат-пауза итд

да еще я писал что если результат StringGrid1.Cells[2, i]:=IntToStr(YaTic1.TIC); = 0 то удалять строку но это я думаю можно сделать вторым циклом

Последний раз редактировалось Aleksandr69; 11.12.2010 в 15:53.
Aleksandr69 вне форума Ответить с цитированием
Старый 11.12.2010, 16:21   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ставь в конце цикла
Код:
Application.ProcessMessages;Sleep(100);
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 11.12.2010, 16:31   #5
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию

работает огромное спасибо,подскажите как сделать цикл на проверку и удаление строки так как я писал выше.
Aleksandr69 вне форума Ответить с цитированием
Старый 11.12.2010, 18:55   #6
Aleksandr69
Пользователь
 
Регистрация: 11.12.2010
Сообщений: 71
По умолчанию

все сделал будет так


Код:
if StringGrid1.Cells[2, i] = '0'  then

StringGrid1.Cells[5, i]:='Нужно удалить'   //ян каталог
else
StringGrid1.Cells[5, i]:='Не удалять';
Aleksandr69 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Странный цикл у меня в StringGrid artemavd Общие вопросы Delphi 14 25.07.2010 17:58
Цикл подстановки в Edit из StringGrid artemavd Общие вопросы Delphi 11 06.07.2010 10:21
Цикл по времени - Как сделать так чтобы цикл выполнялся к примеру 10 секунд ? Anarki Общие вопросы C/C++ 3 13.11.2009 19:23
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 01:34