powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / (VFP7) Grid.InteractiveChange...
9 сообщений из 9, страница 1 из 1
(VFP7) Grid.InteractiveChange...
    #33036027
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На форме есть 4-колоночный Grid (CheckBox, TextBox, CheckBox, CheckBox), под который в процессе работы в качестве источника подшивается dbf-ник с очередной выборкой и структурой: Logical, Character, Logical, Logical. И все нормально работает.
НО: есть необходимость после установки щелчком на одном из CheckBox’ов 3-й колонки значения .T. – перенести СООТВЕТСТВУЮЩЕЕ ему TXT-значение из 2-й колонки в текстовое поле, расположенное здесь же на форме (или в его переменную-ControlSource).
Попытки сделать это через метод CheckBox.InteractiveChange ни к чему не приводят, т.к. в процессе выполнения данного метода указатель остается на первой записи таблицы-источника. Правда, нужного результата УДАЛОСЬ добиться через CheckBox.LostFocus, но уж очень это неудобно – принудительно уходить из Grid’а. Можно еще скомбинировать CheckBox.InteractiveChange с методом SetFocus того текстового поля на форме, значение которого и необходимо изменить в результате. Но, может, есть какой-то более «стройный» путь? Вот если бы вычислить детально, в какой момент переносится значение из CheckBox’а в таблицу источник и перемещается ее указатель… Пытался через Set Step On – ничего не выходит. Подскажите, как склонить Grid к сотрудничеству?
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33036947
Фотография ГенГрум
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поясни как это CheckBox.InteractiveChange не работает? А recno() что показывает? А галочку он куда ставит? В первую позицию?
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037207
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да работать-то он работает. И галочку ставит, куда надо. Только все это происходит только после ухода фокуса с этого CheckBox'а. А если в его методе InteractiveChange указать:
CheckBox::InteractiveChange
select temp_otc && таблица источник для Grid'а, содержащего данный CheckBox1
browse
то увидим, что указатель находится на 1-й записи, и ничего не изменилось в поле-источнике данного CheckBox'а.
Иными словами, изменения происходят только после полной отработки метода InteractiveChange и начала работы какого-либо другого метода, например - LostFocus().
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037211
Urri
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
neznajkaИными словами, изменения происходят только после полной отработки метода InteractiveChange и начала работы какого-либо другого метода, например - LostFocus().

Может, поможет?
CheckBox.InteractiveChange
Код: plaintext
1.
2.
?RECNO()
DODEFAULT()
?RECNO()
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037232
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi neznajka!

chk.Valid() или Click()
С грида никуда уходить не нужно!

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037398
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Во, блин... Мне и в голову не пришло. Действительно, должно сработать. Сейчас приду на работу - попробую. Спасибо всем за участие.
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037880
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверил. В общем, все предложенные способы срабатывают примерно одинаково, и без "насильного" смещения фокуса. Что и нужно было.
Исключение составляет тот случай, когда на таблицу-источник Grid'а наложен Set Filter - тогда значения выдаются по довольно мудреному алгоритму. В таком случае - безукоризненно работает только метод CheckBox.LostFocus()
Но я все равно всем признателен за советы, т.к. теперь знаю, в каком направлении искать оптимальное решение. Теперь уверен, что победю :)
Спасибо.
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33037958
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В 8 и 9 версии есть очень полезная функция BINDEVENT с ее помощью можно творить над Grid настоящие чудеса вообще не напрягаясь...

Good luck!
...
Рейтинг: 0 / 0
(VFP7) Grid.InteractiveChange...
    #33039529
Фотография neznajka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To Sergey Ch:
Спасибо. Совет о переходе уместен, но, увы, у меня до сих пор осталась проблема: http://www.sql.ru/forum/actualthread.aspx?tid=126776#1004022
Так что - пока извращаюсь доступными средствами :)
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / (VFP7) Grid.InteractiveChange...
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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