Re: if statement not working
- Posted by Derek Parnell <ddparnell at bigpond.com> Mar 21, 2002
- 548 views
This, in my not so humble opinion, is one of RDS's lesser decisions. For some reason, not quiet explained yet, RDS decided that sequences must not allowed to be compared using the normal comparision operators. For sequences you are forced into calling a function to compare them. The two main functions are 'compare()' and 'equal()'. compare(s1,s2) returns one of three values: -1 if s1 is less than s2 0 if s1 equals s2 1 if s1 is greater than s2 equal(s1,s2) returns one of two values: 0 if s1 is not equal to s2 1 if s1 is equal to s2 Go figure! Many people have been try to get RDS to see sense in using the standard comparision operators with sequences but to no avail yet. ------- Derek. 22/03/2002 11:04:33 AM, xxmyt at yahoo.com wrote: > >hello everyone. > >the code i pasted down works properly. however, it doesnt work in the >second way. > >my code: >include dos32lib.e >without warning > >constant > Win = create( Window, "PASSWORD REQUIRED", 0, Default, Default, >400, 200, 0 ), > > Sle1 = create( EditText, "", Win, 10, 40, 120, 20, 0 ), > Button1 = create( PushButton, "OK", Win, 180, 40, 120, 20, 0 ) > > >procedure onClick_Button1() > > if equal(getText(Sle1),"YES") then > closeWindow(Win) > end if > >end procedure > >onClick[Button1] = routine_id("onClick_Button1") > >WinMain( Win ) > > but if i change the if statement this way, i get an error message: > > if getText(Sle1) = "YES" then > closeWindow(Win) > end if > >error message says, the result of the if statemnt should be an atom. > >so whats it all about? > > > > --------- Cheers, Derek Parnell ICQ# 7647806