FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour FWH_2407 oSay does not assume nHeight
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sat Aug 24, 2024 09:33 AM
[ Eval( { | oSay, nWidth, nHeight | If( ! Empty( oSay ) .and. ! Empty( nWidth ), oSay:SetSize( nWidth, nHeight ),) }, <oSay>, <nWidth>, <nHeight> ) ]

Working! :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 36
Joined: Sat Sep 03, 2016 03:11 PM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sat Aug 24, 2024 12:03 PM
Working! with DEFINE WINDOW
Code (fw): Select all Collapse
function Main()

    local oWnd, oTest1, oTest2

    DEFINE WINDOW oWnd

    @ 057,376 SAY oTest1 PROMPT 'Test1' PIXEL
    ? oTest1:nWidth,oTest1:nHeight // 28,16

    @ 087,376 SAY oTest2 PROMPT 'Test2' PIXEL SIZE 015,007
    ? oTest2:nWidth,oTest2:nHeight // 15,07

    oTest1:SetText('** Test1 **')
    ? oTest1:nWidth,oTest1:nHeight // 28,16

    oTest2:SetText('** Test2 **')
    ? oTest2:nWidth,oTest2:nHeight // 15,07

    oTest1:refresh()
    ? oTest1:nWidth,oTest1:nHeight // 28,16

    oTest2:refresh()
    ? oTest2:nWidth,oTest2:nHeight //15,07

    ACTIVATE WINDOW oWnd

return nil
not Working! with DEFINE DIALOG
Code (fw): Select all Collapse
function Test()

    local oWnd, oTest1, oTest2

    DEFINE DIALOG oWnd

    @ 057,376 SAY oTest1 PROMPT 'Test1' PIXEL
    ? oTest1:nWidth,oTest1:nHeight // 37,16

    @ 087,376 SAY oTest2 PROMPT 'Test2' PIXEL SIZE 015,007
    ? oTest2:nWidth,oTest2:nHeight // 1,1

    oTest1:SetText('** Test1 **')
    ? oTest1:nWidth,oTest1:nHeight // 27,16

    oTest2:SetText('** Test2 **')
    ? oTest2:nWidth,oTest2:nHeight // 1,1

    oTest1:refresh()
    ? oTest1:nWidth,oTest1:nHeight // 37,16

    oTest2:refresh()
    ? oTest2:nWidth,oTest2:nHeight //1,1

    ACTIVATE DIALOG oWnd

return nil
I believe that the best solution would be to change the Tsay class so as not to calculate nWidth/nHeigth when these values ​​are defined by the user
João Carlos

VinheSoft Informatica

BCC 7.7 - FHW 24.07 - Harbour 3.2.0dev (r2404101339) for BCC 7.7
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sat Aug 24, 2024 12:09 PM

You are right as controls in dialogboxes don't exist until the dialog is activated

Could you please explain us what do you need this for ?

Maybe there is another way of doing it

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sat Aug 24, 2024 05:43 PM
Dear Antonio,

I want to move Say object position. I add 1400 not work. FWH2404 version only add 120 work fine.

FWH2407
Code (fw): Select all Collapse
if nStyle < 2007
         @ nRow, nCol + 1400 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
           LTrim( Str( ::nPage, 4, 0 ) ) + " / " + ;
           LTrim( Str( Len( ::oDevice:aMeta ) ) ) ;
           SIZE 180, 15 PIXEL OF ::oBar FONT ::oFont
         ::oPage:lTransparent = .T.
endif
FWH2404
Code (fw): Select all Collapse
if nStyle < 2007
         @ nRow, nCol + 120 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
           LTrim( Str( ::nPage, 4, 0 ) ) + " / " + ;
           LTrim( Str( Len( ::oDevice:aMeta ) ) ) ;
           SIZE 180, 15 PIXEL OF ::oBar FONT ::oFont
         ::oPage:lTransparent = .T.
endif
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sun Aug 25, 2024 01:09 PM
vinhesoft wrote:good morning

via command does not assume nHeight

@ 057,376 SAY oTest PROMPT 'Test' PIXEL
? oTest:nHeight --> 22

@ 057,376 SAY oTest PROMPT 'Test' PIXEL SIZE 015,007
? oTest:nHeight --> 22

------------------------------------

via property yes

oTest:nHeight := 7
? oTest:nHeight --> 7
Working correctly for me.
Please try this program.
Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oWnd, oSay1, oSay2, oBtn, aInfo

   DEFINE WINDOW oWnd FROM 0,0 TO 500,500 PIXEL TITLE FWVERSION

   @  20,20 SAY oSay1 PROMPT "30 PIXEL HEIGHT" SIZE 200,30 PIXEL OF oWnd
   ? oSay1:nHeight // --> 31

   @  60,20 SAY oSay2 PROMPT "50 PIXEL HEIGHT" SIZE 200,50 PIXEL OF oWnd
   ? oSay2:nHeight // --> 51

   @ 350,20 BTNBMP oBtn PROMPT "CHECK SIZES" + CRLF + "60 PIX HEIGHT" ;
      SIZE 200,60 PIXEL OF oWnd FLAT ACTION ( ;
      aInfo := {}, ;
      AEval( oWnd:aControls, ;
         { |o| AAdd( aInfo, { o:ClassName(), o:nHeight } ) } ), ;
      XBrowse( aInfo ) )

   ACTIVATE WINDOW oWnd CENTERED

return nil


Note: There is always 1 pixel difference for some controls/windows. I will explain this in detail in a separate post. Otherwise oCtrl:nHeight gives wthe correct value.
Regards



G. N. Rao.

Hyderabad, India
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sun Aug 25, 2024 01:54 PM
not Working! with DEFINE DIALOG
This is working for me here:
Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oDlg, oSay1, oSay2, oBtn, aInfo

   DEFINE DIALOG oDlg SIZE 500,500 PIXEL TRUEPIXEL TITLE FWVERSION

   @  20,20 SAY oSay1 PROMPT "30 PIXEL HEIGHT" SIZE 200,30 PIXEL OF oDlg
   ? oSay1:nHeight // --> 31

   @  60,20 SAY oSay2 PROMPT "50 PIXEL HEIGHT" SIZE 200,50 PIXEL OF oDlg
   ? oSay2:nHeight // --> 51

   @ 350,20 BTNBMP oBtn PROMPT "CHECK SIZES" + CRLF + "60 PIX HEIGHT" ;
      SIZE 200,60 PIXEL OF oDlg FLAT ACTION ( ;
      aInfo := {}, ;
      AEval( oDlg:aControls, ;
         { |o| AAdd( aInfo, { o:ClassName(), o:nHeight } ) } ), ;
      XBrowse( aInfo ) )

   ACTIVATE DIALOG oDlg CENTERED

return nil
Please run this also and see.
Regards



G. N. Rao.

Hyderabad, India
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Sun Aug 25, 2024 03:47 PM
I want to move Say object position. I add 1400 not work. FWH2404 version only add 120 work fine.
Adding 1400 pixels may move it outside the size of the Bar
Does it work if you add 120 pixels?
Regards



G. N. Rao.

Hyderabad, India
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Mon Aug 26, 2024 05:21 PM
nageswaragunupudi wrote:
I want to move Say object position. I add 1400 not work. FWH2404 version only add 120 work fine.
Adding 1400 pixels may move it outside the size of the Bar
Does it work if you add 120 pixels?
Adding 1400 and 120 always stay here not move.
FWH2407
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Tue Aug 27, 2024 09:38 AM

How can you help us to test this at our end?

Regards



G. N. Rao.

Hyderabad, India
Posts: 36
Joined: Sat Sep 03, 2016 03:11 PM
Re: FWH_2407 oSay does not assume nHeight
Posted: Wed Aug 28, 2024 03:15 PM
Dear Antonio

FHW_1912


FWH_2407


DEFINE WINDOW --> ok

DEFINE DIALOG --> not working
João Carlos

VinheSoft Informatica

BCC 7.7 - FHW 24.07 - Harbour 3.2.0dev (r2404101339) for BCC 7.7
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Re: FWH_2407 oSay does not assume nHeight
Posted: Wed Aug 28, 2024 03:21 PM

Many thanks for your feedback

We are working to fix it

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Wed Aug 28, 2024 03:24 PM

Please provide one small sample program which we can test here with different versions with Window and dialog

Regards



G. N. Rao.

Hyderabad, India
Posts: 866
Joined: Tue Oct 16, 2007 08:57 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Thu Aug 29, 2024 02:23 AM
nageswaragunupudi wrote:How can you help us to test this at our end?
Mr.RAO
Thinking about FWH2404 working and FWH2407 not work. I just modify same code and Chinese word within rpreview.prg
Best Regards,



Richard



Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 32bit

MySQL v8.0

Harbour 3.2.0dev (r2503251254) => Borland C++ v7.7 64bit
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Thu Aug 29, 2024 06:10 AM
richard-service wrote:
How can you help us to test this at our end?
Mr.RAO
Thinking about FWH2404 working and FWH2407 not work. I just modify same code and Chinese word within rpreview.prg
I have tried changing this here on my PC.
This is the original code in rpreview.prg:
Code (fw): Select all Collapse
@ nRow, nCol + 100 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
Without any changes this is how the preview bar looks like:


Now, I changed +100 as +300 like this:
Code (fw): Select all Collapse
@ nRow, nCol + 300 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
With this change, the Say is moved to the right by 200 pixels and looks like this:


Then I changed it to +600 like this:
Code (fw): Select all Collapse
@ nRow, nCol + 600 SAY ::oPage PROMPT FWString( "Page number:" ) + ;
Then the Say moved by 300 pixels more to the right and looked like this:


So, this is working correctly for me here.
Regards



G. N. Rao.

Hyderabad, India
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: FWH_2407 oSay does not assume nHeight
Posted: Thu Aug 29, 2024 07:16 AM
Mr. João Carlos,

Yes, we see the problem. We regret the inconvenience and also thank your for bringing the issue to our notice.

Can you make two small fixes to "say.prg" and use it to rebuild your application?

FIX:
1) Please locate these two lines. (lines 137 and 138)
Code (fw): Select all Collapse
   ::nBottom   = ::nTop + nHeight
   ::nRight    = ::nLeft + nWidth
Change these two lines as:
Code (fw): Select all Collapse
   ::nBottom   = ::nTop + nHeight - 1
   ::nRight    = ::nLeft + nWidth - 1
2. Please locate this line of code (line 151)
Code (fw): Select all Collapse
   ::CalcSize( ::nTop, ::nLeft, @nWidth, @nHeight, lRelPix )
Please comment out this line, like this
Code (fw): Select all Collapse
// ::CalcSize( ::nTop, ::nLeft, @nWidth, @nHeight, lRelPix )
These changes should resolve your issues.
Please provide your feed back.
Regards



G. N. Rao.

Hyderabad, India