Página 1 de 1

2.4

Publicado: Mar Ago 09, 2011 2:27 pm
por Ingo JH
Hi Xailers,
the last letter of the returned string TForm:SaveState() is a lowercase
character. But TForm:RestoreState() needs uppercase.
Line 687 of Form.prg has to be deleted.
685 IF ::lHideOnClose
686 ::Hide()
687 RETURN 0 <== this is wrong
688 ENDIF
Regards
Ingo

2.4

Publicado: Lun Ago 15, 2011 9:15 pm
por jfgimenez
Ingo,
> the last letter of the returned string TForm:SaveState() is a lowercase
> character. But TForm:RestoreState() needs uppercase.
The last character is uppercase when the form is visible, but lowercase when
it's hidden. So, RestoreState() make's the form visible only when the last
character is uppercase.
> Line 687 of Form.prg has to be deleted.
>
> 685 IF ::lHideOnClose
> 686 ::Hide()
> 687 RETURN 0 <== this is wrong
> 688 ENDIF
No, it's ok. The property lHideOnClose means that the form must be hidden
when the user tries to close it, instead of closing it. So, as you can see,
the for is hidden by calling ::Hide(), and a 0 is returned to avoid the form
to be closed by the OS.
--
Regards,
Jose F. Gimenez
http://www.xailer.com
http://www.xailer.info

2.4

Publicado: Mar Ago 16, 2011 10:07 am
por Ingo JH
José,
thanks for answering.
"Jose F. Gimenez" <jfgimenez@wanadoo.es> schrieb im Newsbeitrag
news:[email=4e497050@svctag-j7w3v3j....]4e497050@svctag-j7w3v3j....[/email]
> Ingo,
>
>> the last letter of the returned string TForm:SaveState() is a lowercase
>> character. But TForm:RestoreState() needs uppercase.
>
> The last character is uppercase when the form is visible, but lowercase
> when it's hidden. So, RestoreState() make's the form visible only when the
> last character is uppercase.
>
A small form with the property lAppWindow := .T. should start in the same
state as ending. But when it ended minimized the last Charakter is "m" now.
But it should be "M" to be shown minimized in the systems task bar. With "m"
you can't see it there as it should.
>
>> Line 687 of Form.prg has to be deleted.
>>
>> 685 IF ::lHideOnClose
>> 686 ::Hide()
>> 687 RETURN 0 <== this is wrong
>> 688 ENDIF
>
> No, it's ok. The property lHideOnClose means that the form must be hidden
> when the user tries to close it, instead of closing it. So, as you can
> see, the for is hidden by calling ::Hide(), and a 0 is returned to avoid
> the form to be closed by the OS.
>
You're right, sorry.
Regards
Ingo