Page 1 of 1
problems in Picture clause of SAY command
Posted: Mon Apr 27, 2009 8:04 am
by marzio
@ n,n SAY nVar Picture "999,999,999.99"
in the version fwh 8.12 picture in SAY works fine,
i have tried fwh 9.03 and the follow line visualizes all the commas also with few numbers.
the E operator doesn't work, with the Z operator the box is blank.
i have used xHarbour 1.21
marzio
Re: problems in Picture clause of SAY command
Posted: Tue Apr 28, 2009 9:26 am
by Antonio Linares
Marzio,
Please make this change In Class TSay Method Initiate:
Code: Select all
...
if ::cCaption != nil // don't use Empty() here or blank texts will not show
// ::SetText( ::cCaption ) previous code
SetWindowText( ::hWnd, cText ) // new
else
::cCaption = ::GetText()
endif
...
Re: problems in Picture clause of SAY command
Posted: Mon May 04, 2009 8:13 am
by marzio
Antonio,
1) with this change, i have a new error:
unrecoverable error 9003, too many recursive error handler calls.
i have tried: SetWindowText( ::hWnd, ::cCaption )
like in fwh 8.12 and so it works well.
what do you think?
2) the ELSE condition in fwh 8.12 is: ::cCaption = GetWindowText( ::hWnd )
the ELSE condition in fwh 9.03 is: ::cCaption = ::GetText()
is this correct for fwh 9.03?
thanks, marzio
Re: problems in Picture clause of SAY command
Posted: Mon May 04, 2009 10:38 am
by Antonio Linares
Marzio,
> unrecoverable error 9003, too many recursive error handler calls
Please review the created error.log and look for the line where the error comes from, and post it here, thanks.
>
the ELSE condition in fwh 9.03 is: ::cCaption = ::GetText()
is this correct for fwh 9.03?
>
Yes, it is correct. We are preparing the code for Unicode full support.
Re: problems in Picture clause of SAY command
Posted: Tue May 05, 2009 6:42 am
by marzio
Code: Select all
Application
===========
Path and name: T:\marzio\Winclip\Applicazioni\printXls\printXls.exe (32 bits)
Size: 2,492,928 bytes
Time from start: 0 hours 0 mins 2 secs
Error occurred at: 05/04/09, 10:05:01
Error description: Error BASE/1003 Variable does not exist: CTEXT
Args:
Stack Calls
===========
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
Called from: harbour.prg => OSEND(0)
Called from: harbour.prg => ASEND(0)
Called from: dialog.prg => TDIALOG:INITIATE(0)
Called from: dialog.prg => TDIALOG:HANDLEEVENT(0)
Called from: => DIALOGBOXINDIRECT(0)
Called from: dialog.prg => TDIALOG:ACTIVATE(0)
Called from: errsysw.prg => ERRORDIALOG(0)
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
Called from: => __OBJSENDMSG(0)
System
======
Re: problems in Picture clause of SAY command
Posted: Tue May 05, 2009 7:44 am
by Antonio Linares
Marzio,
Please post here your Class TSay Method Initiate() source code, thanks
It seems as you are using an undeclared cText variable there:
Error description: Error BASE/1003 Variable does not exist: CTEXT
...
Called from: errsysw.prg => (b)ERRORSYS(0)
Called from: say.prg => TSAY:INITIATE(0)
...
Re: problems in Picture clause of SAY command
Posted: Tue May 05, 2009 8:08 am
by marzio
Code: Select all
//----------------------------------------------------------------------------//
METHOD Initiate( hDlg ) CLASS TSay
Super:Initiate( hDlg )
if ! IsAppThemed()
if ::lTransparent
if ! Empty( ::oWnd:oBrush:hBitmap ) .and. !empty( ::oBrush )
::SetBrush( ::oWnd:oBrush )
endif
endif
endif
if ::cCaption != nil // don't use Empty() here or blank texts will not show
// ::SetText( ::cCaption ) previous code
SetWindowText( ::hWnd, cText ) // new
else
::cCaption = ::GetText()
endif
return nil
//----------------------------------------------------------------------------//
Re: problems in Picture clause of SAY command
Posted: Wed May 06, 2009 8:33 am
by Antonio Linares
Marzio,
Instead of:
SetWindowText( ::hWnd, cText ) // new
it should be:
SetWindowText( ::hWnd, ::cCaption ) // new