Форум: "Основная";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
ВнизНаверно простой вопрос, но все-таки... Найти похожие ветки
← →
Andrey-k (2002-05-31 21:15) [0]Как в StrigGride удалить строку? Использование других разновидностей гридов не приемлемо. Заранее спасибо.
← →
MBo (2002-05-31 21:23) [1]http://delphibase.endimus.com/?action=viewfunc&topic=vclctrl&index=2
← →
Andrey-k (2002-05-31 22:02) [2]спасибо
← →
Andrey-k (2002-05-31 22:22) [3]слушай, но медлено!
← →
Andrey-k (2002-05-31 22:25) [4]если уже 1000 строк, то приехали.
можно идти пить чай
← →
Song (2002-05-31 22:34) [5]Сначала всё удалите что нужно, а сдвигать будете потом.
Кстати, чай если вкусный, тоже неплохо :)
← →
Andrey-k (2002-05-31 22:41) [6]идея неплохая :)
← →
MBo (2002-05-31 22:57) [7]>Andrey-k
type
TXGrid=class(TCustomGrid);
....
TXGrid(StringGrid1).DeleteRow(N);
← →
Andrey-k (2002-05-31 23:18) [8]Спасибо. это похоже то, что надо
приемлемо
With Form1.StringGrid1 do
Repeat
If (Cells[x,y]<>Str) then
TXGrid(Form1.StringGrid1).DeleteRow(i)
else
inc(i);
Until RowCount=i;
COOL!
← →
Andrey-k (2002-06-02 01:33) [9]Прикол!
если я хочу после удалений выполнить заполнение грида заново, то вижу ранее удаленные строки :)
т.е. из Rows они не убились!
хм как на ето повлиять?
Перед заполнением заново ставлю RowCount:=0, может ошибаюсь?
(может надо Rows чистить по другому, но память приложение не жрет, если не было удалений - значит это присвоение чистит лист Rows)
← →
Andrey-k (2002-06-02 01:42) [10]а с удалением память приложение жрет
← →
Agent Smith (2002-06-02 07:38) [11]
StringGrid1.Rows[StringGrid1.Row].Clear;
for i:=StringGrid1.Row+1 to N do
StringGrid1.Rows[i-1]:=StringGrid1.Rows[i];
Удаляем стороку, которая в данный момент находится в фокусе, затем сдвигаем все остальные строки, стоящие после нее.
N-номер послдней строки, не забудь, что считаем с нуля :)
В моей программе есть таблица на 100 строк, при нажатии не кнопку выделенная строка удаляется, а все последующие сдвигаются. Все прекрасно работает.
← →
Anatoly Podgoretsky (2002-06-02 09:25) [12]Andrey-k © (02.06.02 01:33)
Как чего, раньше очистить ячейки, а потом удалять
← →
Andrey-k (2002-06-02 13:41) [13]>Agent Smith
До этого уже MBo придлагал такой способ, только он копировал Assignoм Rows.
У меня 2000 строк и для удаления первой, 5 секунд ждать не приемлемо пока переприсвоится 2000-1 указателей!
Похоже выход один - держать в гриде максимум 100 строк
← →
Agent Smith (2002-06-02 14:06) [14]
> Похоже выход один - держать в гриде максимум 100 строк
Я так и сделал :)
← →
Andrey-k (2002-06-02 14:25) [15]Я нашел AdvStringGrid - он работает! Но вот когда деньги придется платить? :)
Приложение с этим компонентом выростает до 800к, исходников нет.
Возможно придется все переделывать... а не хотелось бы :)
мастера, еще есть идеи - как побороть удаление в TStringGrid?
← →
Andrey-k (2002-06-02 16:51) [16]через жопу он работает ....
MouseWheelUp и MouseWheelDown прикол :) колесо крутит через 5 строк минимум! Как не стараюсь следующую не дает :))))
уже нервы .
← →
Andrey-k (2002-06-02 16:53) [17]ха опять вижу ранее удаленные строки :)
Во блин, как прям с TXGrid-примером
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.13;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c