Форум » [x]Harbour » Обновить GET'ы в процессе ввода » Ответить

Обновить GET'ы в процессе ввода

Snake: === LOCAL a:=2, b:=3, c:=a+b @ 0,0 GET a VALID (c:=a+b, .t. ) @ 1,0 GET b VALID (c:=a+b, .t. ) @ 2,0 GET c === Новое значение c становится видно, только когда до него доходит фокус - как сделать, чтобы изменение значения было видно на экране сразу же после ввода a или b ?

Ответов - 6

Dima: Snake пишет: @ 0,0 GET a VALID (c:=a+b, .t. ) @ 1,0 GET b VALID (c:=a+b, .t. ) @ 2,0 GET c [pre2] Как то так @ 0,0 GET a VALID eval({|| c:=a+b,AEVAL( GetList, {|g| g:display()}),.t.}) [/pre2]

Pasha: Мне приходилось для этих целей патчить getsys.prg еще для клиппера #define GE_DISPLAY 10 и в Settle добавить строки: if exitState == GE_DISPLAY AEval(GetList, {|get| get:display()}) exitState := GE_DOWN endif а в Valid-блоке ставить: oG:exitState := GE_DISPLAY

LYSK: кажется и тут недавно было - в валидной процедуре перед выходом сделать Aeval(GetList.{|og|og:display})

Dima: Похожая задачка. Еще нахожусь в процессе ввода a , нужно что бы c менялось по мере набора a PS Нужен вариант под Harbour

PSP: Dima пишет: Еще нахожусь в процессе ввода a , нужно что бы c менялось по мере набора a Если на уровне исходников harbour, то, имхо, не стОит. Проще свой ввод сделать.

SergKis: Dima пишет Нужен вариант под Harbour Можно попробовать установить hb_gtInfo(HB_GTI_INKEYFILTER, {|| ... }) и в блоке исп. GetActive():varGet() и переменную GetList для поиска объекта get, где менять отображение ( GetList[5]:VarPut(...) ), думаю должно получиться. Сам не пробовал. Примеры в test есть get.prg, [pre2] @ 10, 10 SAY "cVar :" GET cVar PICTURE "@K!" ... @ 20, 10 SAY "Picture of GET-1:" GET GetList[ 1 ]:Picture ... [/pre2]



полная версия страницы