Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2008, 16:55   #1
Avalonix
Пользователь
 
Регистрация: 20.04.2008
Сообщений: 57
По умолчанию Перемещение указателя на следующую запись

Дана таблица, например:
10 50
50 100
100 150
150 200

мы воодим на форме число в едит, например х=75.
Необходимо установить указатель на запись в которой 75 попадает в интервал чисел (в данном случае 50 100)
Тут явно надо сравнивать построчно.. if x>(первое поле) and x<(второе поле) то останавливаем указатель тут, иначе передвигаемся на следующую запись.. Вот сравнение я сделал, а как передвигаться на следующую запись не знаю.

Последний раз редактировалось Avalonix; 30.05.2008 в 16:59.
Avalonix вне форума Ответить с цитированием
Старый 30.05.2008, 16:57   #2
D-mon
Форумчанин
 
Регистрация: 22.06.2007
Сообщений: 414
По умолчанию

Например Table1.Next или Query1.Next;
Нет невыполнимых задач, всё дело времени...
D-mon вне форума Ответить с цитированием
Старый 30.05.2008, 17:00   #3
Avalonix
Пользователь
 
Регистрация: 20.04.2008
Сообщений: 57
По умолчанию

Спасибо. Сейчас попробую.
Avalonix вне форума Ответить с цитированием
Старый 30.05.2008, 17:14   #4
Avalonix
Пользователь
 
Регистрация: 20.04.2008
Сообщений: 57
По умолчанию

Написал такую штуку
Код:
BANT:= strtoint(EditBAN_ves.Text);
while BANT>(strtoint(DBEditBAN_vesn.Text)) and           BANT<(strtoint(DBEditBAN_vesv.Text))
  do DataModule1.TableTarBan.Next;
При компиляции выделяет последнюю строку с ошибкой incompatible types
Avalonix вне форума Ответить с цитированием
Старый 30.05.2008, 20:08   #5
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,526
По умолчанию

надо
# while ( BANT>(strtoint(DBEditBAN_vesn.Text) ) ) and ( BANT<(strtoint(DBEditBAN_vesv.Text) ) )

выделены исправления в коде
так как and имеет больший приоритет по сравнению с операциями сравнения
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Старый 31.05.2008, 04:40   #6
Avalonix
Пользователь
 
Регистрация: 20.04.2008
Сообщений: 57
По умолчанию

Благодарю. Исправил. Только вот почему то указатель не желает перемещаться при выполнении условия
Avalonix вне форума Ответить с цитированием
Старый 31.05.2008, 11:13   #7
TaTT DoGG
Форумчанин
 
Аватар для TaTT DoGG
 
Регистрация: 25.04.2008
Сообщений: 476
По умолчанию

вынеси на форму dbnavigator (visible:=false)
свяжи его со своей базой
Код:
BANT:= strtoint(EditBAN_ves.Text);   
while (BANT>(strtoint(DBEditBAN_vesn.Text))) and           (BANT<(strtoint(DBEditBAN_vesv.Text)))  
  do DBNavigator1.BtnClick(nbNext);
Life if about choices
Make the right choice
TaTT DoGG вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На чем целесообразнее решить следующую задачу? Stilet Свободное общение 4 01.08.2008 09:35
передача указателя в функцию arturka Помощь студентам 3 06.07.2008 00:25
Координаты указателя мыши Артэс Win Api 9 15.06.2008 16:20
Движение указателя по форме или Image nevo Компоненты Delphi 5 06.04.2008 21:00
Положение указателя мыши Viteef Общие вопросы Delphi 4 26.06.2007 15:59