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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.01.2008, 19:27   #1
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию Несрабатывание

Написал цикл:
Код:
 If Albs.IndexOf(Tek)<>-1 then
  Begin
  Grid.RowCount:=Grid.RowCount+1;
  Grid.Cells[0,Grid.RowCount]:=Tab;
  Grid.Cells[1,Grid.RowCount]:=TabPath;
  Grid.Cells[2,Grid.RowCount]:=TabType;
  Albs.Delete(Albs.IndexOf(Tek));
  End;
Это при нажатии кнопки.
Запускаем тыкаем кнопку
1раз:ни какой реакции
2раз:увеличивается RowCount
3раз:увеличивается и добавляется текст
Вопрос: почему?
Разработка сайтов -дело прикольное
LeoN вне форума Ответить с цитированием
Старый 01.01.2008, 19:57   #2
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

А где здесь цикл ?

увеличивается наверное потому что Вы делаете вот это:
Grid.RowCount:=Grid.RowCount+1;
BOBAH13 вне форума Ответить с цитированием
Старый 02.01.2008, 05:57   #3
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Кто не знает if then else тоже считается циклом.
Проблема не в добавление, а том что это происходит только при 3-ем нажатии, а не при 1-ом.
Разработка сайтов -дело прикольное

Последний раз редактировалось LeoN; 02.01.2008 в 06:16. Причина: опечатка
LeoN вне форума Ответить с цитированием
Старый 02.01.2008, 13:02   #4
Mitron
Форумчанин
 
Аватар для Mitron
 
Регистрация: 10.05.2007
Сообщений: 117
По умолчанию

попробуй реализовать метод Хаффмана.
Довольно не плохо сжимает ))
Задачи на заказ

Блажен тот, кто ничего не знает: он не рискует быть не понятым.
Mitron вне форума Ответить с цитированием
Старый 02.01.2008, 21:08   #5
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Цитата:
Сообщение от LeoN Посмотреть сообщение
Кто не знает if then else тоже считается циклом.
Это условие, циклом это никогда не считалось (где здесь повторяемость?).

Цитата:
Сообщение от LeoN Посмотреть сообщение
Проблема не в добавление, а том что это происходит только при 3-ем нажатии, а не при 1-ом.
Возможно проблема в том, что используются неверные номера строк. Вместо Grid.Cells[0,Grid.RowCount] нужно писать Grid.Cells[0,Grid.RowCount-1], ведь нумерация строк начинается с нуля.
Jeni вне форума Ответить с цитированием
Старый 02.01.2008, 23:01   #6
BOBAH13
Android Developer
Старожил Подтвердите свой е-майл
 
Аватар для BOBAH13
 
Регистрация: 19.02.2007
Сообщений: 3,708
По умолчанию

Мда уж... оскорбить может любой, а вот подумать перед тем как написать не каждый в силах! Да LeoN? Если бы Вы вдумались в смысл и значение слова Цикл то поняли бы что условие тут вовсе не причем
BOBAH13 вне форума Ответить с цитированием
Старый 03.01.2008, 08:38   #7
LeoN
Форумчанин
 
Аватар для LeoN
 
Регистрация: 03.11.2006
Сообщений: 278
По умолчанию

Извините запамятствовал.бывает
Поставил -1, но срабатывает почему то со 2-го раза. Это может быть из за глючности скина?
Разработка сайтов -дело прикольное

Последний раз редактировалось LeoN; 03.01.2008 в 08:42.
LeoN вне форума Ответить с цитированием
Старый 03.01.2008, 13:08   #8
Jeni
Форумчанин
 
Регистрация: 31.05.2007
Сообщений: 486
По умолчанию

Скин тут может и ни причем. Стоит посмотреть, какое начальное значение у RowCount? А ещё вставить в условие после begin код вроде этого: Application.MessageBox(PAnsiChar(In tToStr(RowCount)), '');
Тогда станет точно понятно, что в какую строку пишется. Возможно RowCount меняется где-то еще.
Jeni вне форума Ответить с цитированием
Ответ


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