![]() |
|
|
![]()
|
|
| Лена |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 16.8.2006 Репутация: 11 Всего: 11 |
Как реализовать следующее:
При щелчке на полосе прокрутки в DBGrid соответственно перемещается и dbIndicator напротив строк. Как считать значение из строки, на которую указывает индикатор после щелчка на полосе прокрутки? (см.рис). Считывать так: Int ParamForSQL1 = DataModule2->ClientDataSetDoors->FieldByName("id")->Value; Однако в каком событии отслеживать указатель dbIndicator при прокрутке? Присоединённый файл ( Кол-во скачиваний: 18 )
1.gif 13,73 Kb |
|||
|
||||
| SPrograMMer |
|
|||
![]() Спамер :) ![]() ![]() Профиль Группа: Участник Сообщений: 442 Регистрация: 5.11.2004 Где: Краснодар Репутация: нет Всего: 6 |
OnAfterScroll ?
-------------------- животное = зверь законченный гентушник |
|||
|
||||
| Лена |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 16.8.2006 Репутация: 11 Всего: 11 |
||||
|
||||
| VitasDeWind |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 21 Регистрация: 2.11.2006 Репутация: нет Всего: нет |
А тебе нужно считать значение из строчки, или получить номер по порядку в индикаторе?
Добавлено @ 10:13 sorry, не дочитал... Нужно считать значение из поля, когда юзэр отпустил левую кнопу мышки после перемещения полосы прокрутки. ТАК ? |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Я предпочитал пользоваться событием TDataSource::OnDataChange
Если Field == NULL, то это означает, что произошло смена текущей записи
-------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| Лена |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 16.8.2006 Репутация: 11 Всего: 11 |
Тут мне не совсем понятно. Тип Field это тип TField колонки. Почему проверка (!Field) означает, что произошла смена записи? Еще вопрос: Поле "id" имеет тип int. Переменная ParamForSQL1 имеет тоже тип int. Когда написала так: ParamForSQL1 = DataModule2->ClientDataSetDoors->FieldByName("id")->Value; получила исключение на рисунке. Когда написала так: ParamForSQL1 = DataModule2->ClientDataSetDoors->FieldByName("id")->AsInteger; все стало нормально. Я проверила что в момент исключения ParamForSQL1 равно нулю и поэтому исключение. Я посмотрела таблицу, там нет id со значеним ноль. Рисунок прилагаю. Запрос к таблице такой: select * from groups order by name Определение таблицы в базе: CREATE TABLE groups ( id int4 NOT NULL DEFAULT nextval('groups_id_seq'::regclass), name varchar(50) NOT NULL, enabled bool NOT NULL, stime timestamp NOT NULL, etime timestamp NOT NULL, CONSTRAINT pk_groups PRIMARY KEY (id) ) Cама таблица в базе на прилагаемом рисунке. Откуда ноль берется при генерации исключения? Присоединённый файл ( Кол-во скачиваний: 10 )
1.gif 13,00 Kb |
|||
|
||||
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Забудте про грид. Когда работаете с БД для Вас должно быть только одно: DataSet и соответственно TField - это Field от DataSet. Цитата из хелпа
Добавлено @ 13:32 Ноль не берется. Почему Вы предположили, что преобразование от Variant к integer, сделанное по умолчанию будет корректно. -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
| Лена |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 879 Регистрация: 16.8.2006 Репутация: 11 Всего: 11 |
||||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |