Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];
ВнизКак сделать перемещие по группам в DBGrid? Найти похожие ветки
← →
Unior (2010-01-23 16:01) [0]В DBGrid выводится информация из нескольких полей, первый из которых - Дата, по этому-же полю происходит сортировка. Как сделать чтобы по нажатию на кнопки "\/" или "/\" пользователь мог перемещаться не на одну строчку вниз/вверх, а сразу на ту, в которой будет следующее значение даты по убывающей/нарастающей?
← →
KilkennyCat © (2010-01-23 17:05) [1]найти следующую\предыдущую дату и установить найденную запись текущей.
← →
turbouser © (2010-01-23 17:05) [2]Как-то так
var d:TDateTime;
with DataSet do
begin
DisableControls;
try
d:=Fields[0].AsDateTime
next; {или prior, в зависимости от кнопки}
while not Eof do
begin
if d<>Fields[0].AsDateTime then
Break;
next; {или prior, в зависимости от кнопки}
end;
finally
EnableControls;
end;
end;
← →
turbouser © (2010-01-23 17:06) [3]while not
Bof
do если /\
:)
← →
Unior (2010-01-23 17:15) [4]Благодарю, turbouser!
← →
Плохиш © (2010-01-23 18:59) [5]
> next; {или prior, в зависимости от кнопки}
> while not Eof do
> begin
> if d<>Fields[0].AsDateTime then
> Break;
> next; {или prior, в зависимости от кнопки}
> end;
>
=
repeat
next;
until (d<>Fields[0].AsDateTime) or Eof;
:-P
← →
Unior (2010-01-23 19:50) [6]> Плохиш © (23.01.10 18:59) [5]
> repeat
> next;
> until (d<>Fields[0].AsDateTime) or Eof;
Хитро! Спасибо!
А не подскажите - как бы доработать этот код, чтобы курсор при перемещении вверх вставал на первую сверху дату (а не снизу)?
> 19.01.2010
19.01.2010
19.01.2010 - а не сюда
20.01.2010
← →
turbouser © (2010-01-23 20:47) [7]
> Unior (23.01.10 19:50) [6]
Добавить еще одну проверку. Это домашнее задание ;)
← →
Плохиш © (2010-01-24 02:04) [8]
> Unior (23.01.10 19:50) [6]
Программиста надо нанять.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2010.03.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c