Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / grid, События при изменении ячейки / 4 сообщений из 4, страница 1 из 1
05.03.2008, 12:31
    #35172425
dokata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
grid, События при изменении ячейки
Есть поле в grid , если оно изменится , то нужно выполнить действия в другой базе данных.
AfterRowColChange .RowChange. Как именно воспользоваться? Спасибо!
...
Рейтинг: 0 / 0
09.03.2008, 01:06
    #35179799
Fox-9
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
grid, События при изменении ячейки
Grid - объект очень-очень непростой, особенно если ставить задачу добавления, редактирования и удаления данных непосредственно в БД, в сети и в реальном времени, и чтобы маркер текущей записи в неактивном Gridе не пропадал. Прочитать негде. Практически ни в одной программе не применяется. Я потратил на это не один год, начинал с VFP3, можно написать приличную книгу. Разработанные библиотеки на VFP9 оцениваются спецами ~ $40000 (и отнюдь не на все случаи жизни). На версиях VFP до 7.0 лучше не тратить время, особенно при больших мощностях БД (много скрытых подвохов). А события можно отследить в отладчике - при смене ячейки их порядка 20-40 в зависимости от применяемых контролов, клавой или мышью делается переход, теряет ли Grid фокус и др.

Конкретно по вопросу - работать надо из активного контрола в событиях When, GotFocus, KeyPress, InteractiveChange, Valid, LostFocus - в зависимости от поставленной задачи, применяемых контролов, способов подключения к данным, буферизации данных и тд. BeforRowColChange не поможет - происходит раньше, чем Valid контрола, хотя при определённых условиях можно, но при этом придётся выполнить программно всю рутину вместо Grid. Удачи.

P.S. В вопросе опечатка: свойство должно быть "RowColChange", а не "RowChange". Не забывать, что его значение обнуляется при получении Gridом фокуса, при вызове метода Grid.Refresh
...
Рейтинг: 0 / 0
09.03.2008, 02:08
    #35179812
MiklS
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
grid, События при изменении ячейки
Разработанные библиотеки на VFP9 оцениваются спецами ~ $40000 (и отнюдь не на все случаи жизни).
Купите лутше у меня за 1000 американских рублей! :)
Конкретно по вопросу
В Init (ThisForm.Grid1.Column1.Text1)
This.AddProperty("lEdits")
В InterActiveChange того же контрола
This.lEdits=.T. && произведены изменения
В Valid того же контрола
IF This.lEdits
** делаем то что нужно, а потом
This.lEdits=.F.
ENDIF
...
Рейтинг: 0 / 0
11.03.2008, 12:58
    #35182252
dokata
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
grid, События при изменении ячейки
Спасибо, MiklS. Очень Вам признательна.
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / grid, События при изменении ячейки / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]