![]() |
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]() ![]() ![]() |
|
MrDmitry |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 556 Регистрация: 10.11.2006 Репутация: нет Всего: нет |
Как организовать цикл по удалению пустых строк в StringGrid?? Или может быть это можно сделать еще проще в компоненте AdvStringGrid?
|
|||
|
||||
Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 8 Всего: 329 |
Выполни цикл от конца к началу (от последней строки к нулевой). В цикле выполняй проверку и удаление.
|
|||
|
||||
Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 15 Всего: 76 |
Akella, на сколько помню(могу ошибаться) в StringGrid можно только уменьшить кол-во строк(столцов), так что надо извращаться )))
(п.с. не люблю я StringGrid) -------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
Frees |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2233 Регистрация: 2.12.2005 Где: Екатеринбург Репутация: 16 Всего: 54 |
у автора AdvStringGrid у него есть метод RemoveRows - для удаления строк Добавлено через 1 минуту и 3 секунды PS а что вместо него любишь? -------------------- Кольцов Виктор Владимирович |
|||
|
||||
Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 15 Всего: 76 |
VT или cxGrid если уж совсем суръезные извращения нужны. Иногда ListView. ![]() ![]() -------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
MrDmitry |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 556 Регистрация: 10.11.2006 Репутация: нет Всего: нет |
Вот вопрос как раз таки и в том как именно извращаца? )) Просто я думаю может поставить компонент AdvStrinGrid? Как там удалять строки? |
||||
|
|||||
DarkProg |
|
|||
![]() Законченный романтик ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1784 Регистрация: 11.3.2009 Где: Земля Репутация: 4 Всего: 19 |
Да также, пока никто насколько я знаю другого способа не придумал как действовать по следующему алгоритму(вообще их два я оба напишу, но просто почти не отличаются): 1)идём сначала(или откуда надо) по всем строка таблицы 2)нашли не нужную и тогда организовываем цикл с этого места и до предпоследней строки таблицы( т.е. StringGrid.RowCount-1 или уже до куда надо), в этом цикле мы каждой текущей строке присваиваем значение следующей 3)последнюю строку очищаем и уменьшаем число строк на одну В результате получите то что хотите Второй вариант заключается в том чтобы все ненужные строки просто очистить и после того как очистили все строки уже организовать цикл по сдвигу и соответственно уменьшению числа строк Для данных целей я вам рекомендую использовать цикл с предусловием Как ещё вариант(вспомнил что как-то такое пробовал, но на малых объёмах) можете нужные строки скопировать в некоторую невидимую таблицу а потом переместить их опять в вашу видимую, но обязательно уменьшив число строк(последние в принципе желательно очищать) -------------------- "И твоя голова всегда в ответе за то куда сядет твой зад..." "Я студент - скажите с какого я ВУЗа..." ![]() ![]() ![]() |
|||
|
||||
MrDmitry |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 556 Регистрация: 10.11.2006 Репутация: нет Всего: нет |
вот так заработает? просто сейчас на работе, нет возможности проверить ( |
|||
|
||||
rytmix |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 2.6.2009 Репутация: нет Всего: нет |
|
|||
|
||||
Mikel |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 882 Регистрация: 30.3.2002 Где: Саратов Репутация: нет Всего: 2 |
И как четвертый вариант
![]() Можно не перетаскивать все значения
а воспользоваться
-------------------- ...so remember, it's better to burn out than to fade away |
||||
|
|||||
Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 8 Всего: 329 |
Да, по идее нужно смещать информацию в гриде, а потом установить нужно значение количества строк
Вроде ж по-русски ответили ![]()
|
||||||
|
|||||||
![]() ![]() ![]() |
Правила форума "Delphi: Для новичков" | |
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |