Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.25;
Скачать: CL | DM;

Вниз

Первая строка ДБГрида   Найти похожие ветки 

 
KSergey ©   (2004-03-25 15:06) [0]

Хочется указать первую строку в гриде, начиная с которой начать отображение.
Куда рыть?


 
Соловьев ©   (2004-03-25 15:06) [1]

зачем это?


 
Ozone ©   (2004-03-25 15:18) [2]

Сортировка?


 
KSergey ©   (2004-03-25 15:26) [3]

Ситуация проста: одна из записей перемещается на 3 выше, например. Для этого у 3-х вышестоящих изменяется значение поля, по которому включена сортировка (ADTDataSet).
Т.е. с точки зрения пользователя запись просто перетащили вверх. порядок как надо, но т.к. с DataSEt производится много манипуляций (перемещение по DataSet) - то все строки в гриде уезжают фиг знает куда (в смысле смещаются визуально).

Вот и хочется как-то "зафиксировать" все это, дабы пользователь не хлопал глазами в поисках как же это так получилось ;) Ведь въехать, что лишь 2 строчка переместилась по получившейся картинке весьма сложно....


 
Ega23 ©   (2004-03-25 15:30) [4]

var
SaveLocation : integer;

SaveLocation:=DataSet.FieldByName("Какой-нибудь ID").AsInteger;

DataSet.DisableControls;

... Манипуляции с DataSet;

DataSet.Locate(SaveLocation, "Какой-нибудь ID", []);

DataSet.EnableControls;


 
Ega23 ©   (2004-03-25 15:31) [5]

Если я правильно вопрос понял, конечно    :о)


 
KSergey ©   (2004-03-25 15:43) [6]

>  [4] Ega23 ©   (25.03.04 15:30)

Не, задача вовсе не в том, чтобы вернуться на ту же запись...

Вроде придумал как можно еще по другому объяснить проблему:
Стоим в середине грида. Теперь бегаем по RecordSet от начало до конца 5 раз во всех направления (ведь имею право? ;), даже меняю порядок записей. После все восстанавливаю (в том числе и порядок записей!), возвращаюсь на исходную. И хочу, чтобы визуально в гриде все осталось как и было! Т.е. стояла наша тек. запись, положим, 5-й с верху в гриде - так и должно остаться!

Фактически, для этого и надо то "мелочь": как-то сохранить какая запись была в гриде первой (визуально), а после манипуляций с DataSet опять сделать ее первой отображаемой (ту, что и была, а не текущую!)

PS
Это слегка отличается от описанной выше ситуации, там я еще про перемещение говорил, но пусть даже и без него: если "сильно" поперебуробить DataSEt, а потом вернуть его в прежнее состояние - грид все равно "перебуробится" (т.е. первой отображаемой станет какая-то уже другая строка)


 
Ega23 ©   (2004-03-25 16:11) [7]

Что-то было в методах или свойствах грида.
Не, вроде WM_SCROLL посылал...
Дома посмотрю...



Страницы: 1 вся ветка

Текущий архив: 2004.04.25;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
7-1078177032
Sergeika
2004-03-02 00:37
2004.04.25
Как отловить нажатие мультимедиа клавиши на клавиатуре?


6-1077657222
Android
2004-02-25 00:13
2004.04.25
Port


1-1081662810
Sphinx
2004-04-11 09:53
2004.04.25
Событие восстановления окна


7-1074159843
alsov
2004-01-15 12:44
2004.04.25
Список функцийй в DLL


1-1081160485
Ivolg
2004-04-05 14:21
2004.04.25
Компонент