Re: if statement not working
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
|
Not Categorized, Please Help
|
|