powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / AfterRowColChange
14 сообщений из 14, страница 1 из 1
AfterRowColChange
    #36223371
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
На форме два грида с родительской и дочерней таблицами и всякие текстбоксы со значениями из строк этих таблиц.
На гриде с родительской таблицей стоит рефреш в afterRowColChange и значения в текстбоксах замечательно меняются при переходе со строки на строку. А в гриде с дочерней таблицей ничего не получается - ставлю рефреш и указатель вапще не сдвинуть с первой записи (( Что это такое? Первый раз столкнулась
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223492
Melnik_A
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Nnnnn

Приветствую !

Проверять(рисовать форму) ща нет времени , но -
1. Во втором(дочернем) гриде будут отображаться записи только удолетворяющие условию связки (Relation) .
Т.е. если вы ждёте там отображение всех записей подчинённой таблицы и установку курсора на первую связаную запись , то это не правильно .
2. Насколько я помню, для правильного поведения связанных таблиц в гридах нужны индексы по связанным полям .
Т.е. без этих индексов отображение(может и сама связка не помню точно) работает криво (натыкался както:) .
3.(совсем не важно) рефреш в afterRowColChange именно для гридов здесь лишний , как мне думается .........

Удачи разобраться !
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223542
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2Melnik_A,

1 Я в курсе что там отображаются только записи, удовлетворяющие условию связи. Мне это и надо.
2 Индексы в таблицах есть по этим полям, с этим все в порядке.
3 Я не знаю как при передвижении по гриду обновлять записи в тексбоксах кроме как рефрешем формы (ну можно написать рефреш на все текстбоксы, но их там слишком много). В текстбоксах controlSource - поля дочерней таблицы (ну или родительской, но эти работают нормально)

:( Вобщем вопрос открыт..
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223611
asdor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Nnnnn А в гриде с дочерней таблицей ничего не получается - ставлю рефреш и указатель вапще не сдвинуть с первой записи [/quot]
Не совсем ясно что происходит.
По AfterRowColChange 1го грида, обновляется 2й грид?
Во 2м гриде, отображены записи, и вы не можете по ним двигаться?
Или он вообще недоступен?
Непонятно
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223632
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2asdor,

В первом гриде в AfterRowColChange стоит просто ThisForm.Refresh. Во втором, при написании этой же строки указатель перестает двигаться по записям и с первой записи не сдвигается совсем.
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223721
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nnnnn2asdor,

В первом гриде в AfterRowColChange стоит просто ThisForm.Refresh. Во втором, при написании этой же строки указатель перестает двигаться по записям и с первой записи не сдвигается совсем.

Приложен примитивный тест (VFP 9.0). Запускайте DO J1J2.PRG и сравнивайте, что у вас иначе, чем в нем.
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223792
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2reware,

Спасибо за пример, я не первый год с фоксом работаю, делала уже такие формы, просто здесь что-то мешает этому рефрешу по-человечески работать.
Думала может кто-то сталкивался или как-то по-другому такие гриды с текстбоксами организовать можно (
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223798
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nnnnn2reware,

Спасибо за пример, я не первый год с фоксом работаю, делала уже такие формы, просто здесь что-то мешает этому рефрешу по-человечески работать.
Думала может кто-то сталкивался или как-то по-другому такие гриды с текстбоксами организовать можно (
Тогда уж методом исключения, по одному что-то выкидывать из кода :)
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223802
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2reware,

Хех, я бы выкинула

Дурдом ромашка на выезде, не поленилась, прописала кучу рефрешей текстбоксов в AfterRowColChange второго грида - работает, зараза ((
...
Рейтинг: 0 / 0
AfterRowColChange
    #36223828
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nnnnn2reware,

Хех, я бы выкинула

Дурдом ромашка на выезде, не поленилась, прописала кучу рефрешей текстбоксов в AfterRowColChange второго грида - работает, зараза ((
Чего-то где-то попадалось про проблемы рефреша контролов формы при рефреше самой формы. Что и где, убей не помню.
...
Рейтинг: 0 / 0
AfterRowColChange
    #36224436
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rewareЧего-то где-то попадалось про проблемы рефреша контролов формы при рефреше самой формы. Что и где, убей не помню.
Про Refresh() можно сказать только то, что он рекурсивный. Т.е. вызов ThisFrom.Refresh() автоматически вызовет Refresh() всех объектов на форме (хотя есть исключения). В общем случае, Refresh() контейнера вызывает Refresh() всех вложенных в него объектов.

Кроме того, Refresh() для Grid практически бесполезен. Обновление "картинки" Grid происходит при переводе фокуса в Grid. Т.е. по Grid.SetFocus(). Метод Grid.Refresh() не в состоянии заставить обновится отображение положения указателя записи в Grid. А поскольку если не все, то очень многое в "картинке" Grid завязано на положение указателя записи, то "обновить картинку" Grid в полном объеме можно только переведя в него фокус.
...
Рейтинг: 0 / 0
AfterRowColChange
    #36224515
ArDo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторНа форме два грида с родительской и дочерней таблицами и всякие текстбоксы со значениями из строк этих таблиц.
На гриде с родительской таблицей стоит рефреш в afterRowColChange и значения в текстбоксах замечательно меняются при переходе со строки на строку. А в гриде с дочерней таблицей ничего не получается - ставлю рефреш и указатель вапще не сдвинуть с первой записи (( Что это такое? Первый раз столкнулась

Такое ощущение, что в AfterRowColCgange дочернего грида Go Top стоит
...
Рейтинг: 0 / 0
AfterRowColChange
    #36226315
Nnnnn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
2ArDo,

Если бы гоу топ был я бы его заметила ))
В рефреше самой формы тоже пусто, мне же нужно просто чтобы очень многие объекты на форме обновлялись при передвижении по гриду. В принципе, не суть важно, хоть и через одно место, но заработало ))
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
AfterRowColChange
    #37163076
ViMa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сделай Select-ом и не мучайся:
(на AfterRowColChange 1 Grid-a)

thisform.grid2.Recordsource = ''
select n_id, fild1, fild2;
where n_id = родительская.n_id ;
from дочерняя ;
into curs a1
thisform.grid2.Recordsourcetype = 1
thisform.grid2.Recordsource = 'a1'
thisform.refresh
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / AfterRowColChange
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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