Видимо - не понял.
Второй вариант - это когда ты не используешь стандартный грид для отображения (есть еще вариант с копированием, см. ниже). Для отображения используется другой компонент, например ListBox с ручной отрисовкой (что б красиво было). В этом случае, сначала у тебя вообще нет записей, т.е. время последнего сообщения = 0. Соответсвенно, при первом запросе будут получены все записи, удовлетворяющие другим условиям. Берем эти записи и копируем их в ListBox (ну и можно старые удалить, если они не нужны больше). Теперь у тебя есть время последней записи, например "2016-02-04 11:55:11.123456". Соотвестенно, подставив это значение в зарос, ты получишь все записи, пришедшие после этой. Добавляешь их опять в ListBox.
Теперь, если хочется использовать тот же механизм, но с грЫдом вместо ListBox. Для этого надо просто воспользоваться любым DataSet'ом, который умеет хранить данные в памяти. Во многих библиотеках есть компоненты типа TMemTable. Так же можно воспользоваться компонентом TClientDataSet, с ним чуть геморройнее, но тоже будет работать. Принцип тот же. Рабочим датасетом получаем данные по тому же принципу и копируем их в этот датасет.
|