1. Re: setFocus() Win32Lib bug

----- Original Message -----
From: "Irv Mullins" <irvm at ellijay.com>
To: "EUforum" <EUforum at topica.com>
Subject: Re: setFocus() Win32Lib bug

> >
> > If the cursor is on, for example, the 3rd position of a field and
> setFocus()
> > moves to another field then the cursor is on the 3rd position of the new
> > field. Is this not wrong? I would think that moving to a new field that
> the
> > cursor should be on the 1'st position of the new field. Is this a win32
> bug
> > or am I wrong...
>
> Standard Windows behavior is to move to the first character position of
the
> next
> entry field - IF the next entry field is empty.- Otherwise, it selects all
> the text in the
> next field, and places the edit cursor at the right end of that field.
>
> This is another Win32Lib bug, I'm afraid.
>

Hello Irv and George,
strictly speaking this is neither a bug nor a Windows standard. However,
this behaviour is very common with Windows apps and we should probably
follow suit. Thanks for pointing this out and I'm surprised that I didn't
notice earlier.

I've included a "fix" below but I'm not 100% satisfied with it yet. My
concerns are that if I embed this behaviour into Win32Lib in this manner,
those people who do not want their apps to do this will have problems. I
will come up with a better response to the issue in a future release.


To insert this auto-selection behaviour into Win32lib, you will need to
insert a call to setIndex in two places.

1)
In the procedure called 'tab_direction()' you need to insert a call to
SetIndex towards the end of the procedure. The new lines should look like
this ...

 w32Proc( xSetFocus, { getHandle( focus ) } )
 setIndex(focus, {1, 1+sendMessage( focus, WM_GETTEXTLENGTH, 0, 0 )})
 window_focus[parent] = focus

2)
In the procedure called 'setFocus()', the last two lines should now look
like this...

 w32Proc( xSetFocus, {getHandle(id)} )
 setIndex(id, {1, 1+sendMessage( id, WM_GETTEXTLENGTH, 0, 0 )})

----
Cheers,
Derek

new topic     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu