powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И опять подсветка
7 сообщений из 7, страница 1 из 1
И опять подсветка
    #34916969
Nikita_2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго всем!
Поможите новичку! Не программист, но жизнь заставила.

Сделал подсветку в гриде так:


переменная gridrecno - public
В init формы

gridrecno=RECNO()
THISFORM.Grid1.SETALL("DynamicBackColor", ;
"iif(recno()=gridrecno, rgb(128,128,255), rgb(255,255,255))", "Column")
THISFORM.grid1.SETALL("DynamicForeColor", ;
"iif(recno()=gridrecno, rgb(250,255,0), rgb(0,0,0))", "Column")

Для грида в AfterRowColChande
stor recno() to GridRecno
_screen.activeform.refresh()

вроде работает
далее после перезагрузке Fox(а) при попытке запустить форму (run) , выдается сообщение

Expression is invalid. Use a valid expression for "DinamicForColor" property
жмешь на ОК , "DinamicForColor" меняется на "DinamicBackColor" и так по кругу в результате по "Chancel" выходишь из этого круга , перезапускаешь форму все начинает работать, естественно до перезапуска самого fox(а)

Для Вас может не проблемма а я уже сутки убил. В Help(е)
Буду признателен за решение данной заморочки
...
Рейтинг: 0 / 0
И опять подсветка
    #34917012
lo-pata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Проверьте в какой момент у вас открывается таблица для которой вы recno() определяете. Она должна быть открыта до инита формы.
...
Рейтинг: 0 / 0
И опять подсветка
    #34917024
Nikita_2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица находится в окружении формы , думаю она и открывается одновременно с формой
...
Рейтинг: 0 / 0
И опять подсветка
    #34917040
lo-pata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У вас gridrecno объявляется непонятно где. У вас PUBLIC gridrecno должно находиться до инита формы. Попробуйте написать хотя бы в самом ините до setall PUBLIC gridrecno. Все будет работать. А так у вас ругается именно на то, что форма не видит переменную gridrecno.
...
Рейтинг: 0 / 0
И опять подсветка
    #34917050
Nikita_2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый Lo-pata , спасибо мягко сказано, все работает. Удачи в нелегком труде !
...
Рейтинг: 0 / 0
И опять подсветка
    #34917528
Kruchinin Pahan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Nikita_2Уважаемый Lo-pata , спасибо мягко сказано, все работает. Удачи в нелегком труде !
Вот в этом месте, можно я вмешаюсь. Плодить public переменные не есть гуд. Предположим, вы хотите одновременно запустить 2 такие формы с таким вот гридом, обе формы будут писать и читать из одной и той же паблик переменной. Ерундень получится. Может попробовать что-нибудь типа.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ThisForm.AddProperty("gridrecno", RECNO())
THISFORM.Grid1.SETALL("DynamicBackColor", ;
"iif(recno()=ThisForm.gridrecno, rgb(128,128,255), rgb(255,255,255))", "Column")
THISFORM.grid1.SETALL("DynamicForeColor", ;
"iif(recno()=ThisForm.gridrecno, rgb(250,255,0), rgb(0,0,0))", "Column")


* Для грида в AfterRowColChande
stor recno() to ThisForm.GridRecno
ThisForm.refresh() && Так и не понял, зачем здесь было _screen.activeform.refresh()
...
Рейтинг: 0 / 0
И опять подсветка
    #34917771
lo-pata
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Kruchinin PahanПлодить public переменные не есть гуд.

Абсолютно согласен. Лично у меня для форм с таблицами создан отдельный класс, в котором уже создано свойство recno, по умолчанию равное 1. При этом гарантированно не возникает таких ситуайций, как у автора топика, что переменная создается после инита формы. Плюс добавлю, что можно даже в afterrowcolchange() использовать не thisform.refresh(), а this.refresh().
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / И опять подсветка
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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