[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Konia z rzedem temu, ktory wyjasni...



rozwiązanie nie tak eleganckie, ale skuteczne. Co do konia, wystarczy jeśli 
będziesz mi go pożyczać w weekendy. Ramka ab służy do sprawdzenia, że zmienne a 
i b nie ulegają zmianie.

Paweł
/* --------------------------------------------------------------- */
DEF VAR a AS LOGICAL VIEW-AS TOGGLE-BOX INIT yes.
DEF VAR b AS LOGICAL VIEW-AS TOGGLE-BOX.
def var i as integer.
DEF FRAME f
  a b.

ON VALUE-CHANGED OF a in frame f do:
  if b:screen-value = "yes" then b:screen-value = "no".
                             else b:screen-value = "yes".
DISPLAY a b with frame ab.
end.  

ON VALUE-CHANGED OF b in frame f do:
  if a:screen-value = "yes" then a:screen-value = "no".
                            else a:screen-value = "yes".
DISPLAY a b with frame ab.
end.

DISPLAY a b WITH FRAME f.
ENABLE a b WITH FRAME f.

WAIT-FOR WINDOW-CLOSE OF DEFAULT-WINDOW.
/* ------------------------------------------------------- */



On  7 Nov 97 at 16:54, Tomasz Fidecki wrote:

> Wlasnie. 
> Pod Windows nie dziala w ogole, w trybie znakowym robi zbyt duzo. Dwa
> obiekty typu toggle-box, w momencie zmiany stanu jednego, chce, aby stan
> drugiego zmienial sie sam.
> 
> /* --------------------------------------------------------------- */
> DEF VAR a AS LOGICAL VIEW-AS TOGGLE-BOX INIT yes.
> DEF VAR b AS LOGICAL VIEW-AS TOGGLE-BOX.
> 
> DEF FRAME f
>   a b.
> 
> ON VALUE-CHANGED OF a APPLY "VALUE-CHANGED" TO b.
> ON VALUE-CHANGED OF b APPLY "VALUE-CHANGED" TO a.
> 
> DISPLAY a b WITH FRAME f.
> ENABLE a b WITH FRAME f.
> 
> WAIT-FOR WINDOW-CLOSE OF DEFAULT-WINDOW.
> /* ------------------------------------------------------- */
> 
> Zalozenie jest takie, ze nie chce operowac na zywych zmiennych, lecz
> jedynie na ich wartosciach z bufora ekranu. Rozwiazanie typu:
> 
> ON VALUE-CHANGED OF a DO:
>   b = NOT b.
>   DISPLAY b WITH FRAME f.
> END.
> mnie nie interesuje. Jak sie maja do tego tzw "mechanizmy ochrony przed
> rekursja" wbudowane w Progressa?
> 
> Pozdrawiam.
> 
> Tomasz Fidecki                          phone (voice)  +48 22 6404728 
> Financial Services LTD                  mailto:tomek@fsl.com.pl 
> Marynarska 21 
> 02-674 Warsaw Poland
> 

-----------------------------------------------------
Pawel Dobrzynski, CSBI Progress Department

   Computer Systems for Business International SA
   ul. Plowiecka 1, PL 04-501 Warszawa, POLAND
   phone: (+48-22) 673-16-80  fax: (+48-22) 612-31-22  
   http://www.csbi.waw.pl/