FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for Harbour/xHarbour resize browse when click maximized dialog
Posts: 434
Joined: Wed Jun 06, 2007 02:58 PM
resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 09:23 AM
hi,
I would like to maximized my browse when I click maximized on my dialog but dialog maximized and browse not...
Code (fw): Select all Collapse
    DEFINE DIALOG oDlg2 RESOURCE "SQL" FONT oFont
        
        REDEFINE XBROWSE oBrw ALIAS "ESPCAT" ;
        COLUMNS "CDFOR" COLSIZES 70 HEADERS "CODICE" ID 200 OF oDlg2
        
        ADD oCol TO oBrw AT 2 DATA espcat->CDPAR TITLE "ARTICOLO"  SIZE 100 LEFT
        ADD oCol TO oBrw AT 3 DATA espcat->DEPAR TITLE "DESCRIZIONE"  SIZE 300 LEFT     
        ADD oCol TO oBrw AT 4 DATA espcat->UNMIS TITLE "UM"  SIZE 25 LEFT
        
        WITH OBJECT oBrw
        :nMarqueeStyle       := MARQSTYLE_HIGHLROW
        :nColDividerStyle    := LINESTYLE_BLACK
        :nRowDividerStyle    := LINESTYLE_BLACK
        :lColDividerComplete := .T. 
        :lRecordSelector     := .F.
        :lHScroll            := .T.
        :lVScroll            := .T.
        :lExcelCellWise := .t.
        END
        REDEFINE BTNBMP BtnEsc ID 11 OF oDlg2            ;
            ACTION (oDlg2:End())                
        REDEFINE BTNBMP BtnEsc ID 12 OF oDlg2 RESOURCE "EXCEL"          ;
            ACTION (oBrw:ToExcel())                             

    ACTIVATE dialog oDlg2 CENTERED

I created my dialog by Pelles C with class name TXBROWSE and in Custom control properties "resizable dialog" I put VERT RESIZING "RESIZING and HORZ RESIZING "RESIZING"

any help?
thank you
ciao
Damiano
FiveWin for xHarbour 24.02 - Feb. 2024 - Embarcadero C++ 7.60 for Win32 Copyright (c) 1993-2023

FWH 64 for Harbour 19.06 (MSVC++) Jun. 2019 - Harbour 3.2.0dev (r1904111533)

Visual Studio 2019 - Pelles C V.8.00.60 (Win64)
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 02:14 PM
Code (fw): Select all Collapse
oBrw:nRightMargin := 20
oBrw:nBottomMargin := 40  // or whatever values in pixels
Regards



G. N. Rao.

Hyderabad, India
Posts: 434
Joined: Wed Jun 06, 2007 02:58 PM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 02:42 PM

hi Mr Rao, it work!
now I have another problem, when I maximized the dialog, browse is ok but BTNBMP buttons remain in their posizion overlapping to the browse.

ciao
Damiano

FiveWin for xHarbour 24.02 - Feb. 2024 - Embarcadero C++ 7.60 for Win32 Copyright (c) 1993-2023

FWH 64 for Harbour 19.06 (MSVC++) Jun. 2019 - Harbour 3.2.0dev (r1904111533)

Visual Studio 2019 - Pelles C V.8.00.60 (Win64)
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 02:50 PM
You need to move them with code in the ON RESIZE clause of the Dialog.
Best way to have fully flexible dialogs is to create from source code and not with resources.

OT:
We recommend creating xbrowse as below and not to use ADD TO oBrw
Code (fw): Select all Collapse
REDEFINE XBROWSE oBrw ALIAS "ESPCAT" ;
COLUMNS "CDFOR", "CDPAR", "DEPAR", "UNIMIS" ;
HEADERS "CDFOR", "ARTICOLO", "DESCRIZIONE", "UM" ;
COLSIZES 70, 100, 300, 25  ;
ID 200 OF oDlg2
Regards



G. N. Rao.

Hyderabad, India
Posts: 434
Joined: Wed Jun 06, 2007 02:58 PM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 02:56 PM

thank you!!!

FiveWin for xHarbour 24.02 - Feb. 2024 - Embarcadero C++ 7.60 for Win32 Copyright (c) 1993-2023

FWH 64 for Harbour 19.06 (MSVC++) Jun. 2019 - Harbour 3.2.0dev (r1904111533)

Visual Studio 2019 - Pelles C V.8.00.60 (Win64)
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 03:04 PM
This is an example of resizable dialog with adjusting controls when resized.
Code (fw): Select all Collapse
function RcBrowse

   local oDlg, oBrw, oBtn1, oBtn2, oRect

   USE STATES  // use any DBF you have

   DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL ;
   STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, ;
              WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )

   @ 80,20 XBROWSE oBrw SIZE -20,-80 PIXEL OF oDlg ;
      DATASOURCE "STATES" AUTOCOLS NOBORDER

   oBrw:CreateFromCode()

   @  20,500 BUTTON oBtn1 PROMPT "BtnOne" SIZE 80,30 PIXEL OF oDlg

   @ 350,500 BUTTON oBtn2 PROMPT "Close" SIZE 80,30 PIXEL OF oDlg ACTION oDlg:End()

   oDlg:bResized := { || ;
      oRect          := oDlg:GetCliRect(), ;
      oBtn2:nTop     := oRect:nBottom - 50, ;
      oBtn2:nLeft    := oRect:nRight - 100, ;
      oBtn1:nLeft    := oRect:nRight - 100  }

   ACTIVATE DIALOG oDlg CENTERED

return nil

Please build and run this program.
You may use this as a template
Regards



G. N. Rao.

Hyderabad, India
Posts: 434
Joined: Wed Jun 06, 2007 02:58 PM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 04:00 PM

very good mr rao
but I have FWH 12.01 and TRUEPIXEL do not work

ciao
Damiano

FiveWin for xHarbour 24.02 - Feb. 2024 - Embarcadero C++ 7.60 for Win32 Copyright (c) 1993-2023

FWH 64 for Harbour 19.06 (MSVC++) Jun. 2019 - Harbour 3.2.0dev (r1904111533)

Visual Studio 2019 - Pelles C V.8.00.60 (Win64)
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: resize browse when click maximized dialog
Posted: Fri Mar 10, 2017 05:21 PM
Without TRUEPIXEL clause:
Code (fw): Select all Collapse
#include "fivewin.ch"

function Main()

   local oDlg, oBrw, oBtn1, oBtn2, oRect

   USE STATES

   DEFINE DIALOG oDlg SIZE 600,400 PIXEL ;
   STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, ;
              WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )

   @ 40,10 XBROWSE oBrw SIZE -10,-40 PIXEL OF oDlg ;
      DATASOURCE "STATES" AUTOCOLS NOBORDER

   oBrw:CreateFromCode()

   @  10,250 BUTTON oBtn1 PROMPT "BtnOne" SIZE 40,15 PIXEL OF oDlg

   @ 175,250 BUTTON oBtn2 PROMPT "Close" SIZE 40,15 PIXEL OF oDlg ACTION oDlg:End()

   oDlg:bResized := { || ;
      oRect          := oDlg:GetCliRect(), ;
      oBtn2:nTop     := oRect:nBottom - 50, ;
      oBtn2:nLeft    := oRect:nRight - 100, ;
      oBtn1:nLeft    := oRect:nRight - 100  }

   ACTIVATE DIALOG oDlg CENTERED

return nil
Regards



G. N. Rao.

Hyderabad, India
Posts: 434
Joined: Wed Jun 06, 2007 02:58 PM
Re: resize browse when click maximized dialog
Posted: Sat Mar 11, 2017 08:50 AM

thank you Mr Rao

ciao
Damiano

FiveWin for xHarbour 24.02 - Feb. 2024 - Embarcadero C++ 7.60 for Win32 Copyright (c) 1993-2023

FWH 64 for Harbour 19.06 (MSVC++) Jun. 2019 - Harbour 3.2.0dev (r1904111533)

Visual Studio 2019 - Pelles C V.8.00.60 (Win64)
Posts: 7317
Joined: Thu Oct 18, 2012 07:17 PM
Re: resize browse when click maximized dialog
Posted: Sun Mar 12, 2017 09:26 AM
nageswaragunupudi wrote:This is an example of resizable dialog with adjusting controls when resized.
Code (fw): Select all Collapse
function RcBrowse

   local oDlg, oBrw, oBtn1, oBtn2, oRect

   USE STATES  // use any DBF you have

   DEFINE DIALOG oDlg SIZE 600,400 PIXEL TRUEPIXEL ;
   STYLE nOR( DS_MODALFRAME, WS_POPUP, WS_CAPTION, WS_SYSMENU, ;
              WS_MAXIMIZEBOX, WS_MINIMIZEBOX, WS_THICKFRAME )

   @ 80,20 XBROWSE oBrw SIZE -20,-80 PIXEL OF oDlg ;
      DATASOURCE "STATES" AUTOCOLS NOBORDER

   oBrw:CreateFromCode()

   @  20,500 BUTTON oBtn1 PROMPT "BtnOne" SIZE 80,30 PIXEL OF oDlg

   @ 350,500 BUTTON oBtn2 PROMPT "Close" SIZE 80,30 PIXEL OF oDlg ACTION oDlg:End()

   oDlg:bResized := { || ;
      oRect          := oDlg:GetCliRect(), ;
      oBtn2:nTop     := oRect:nBottom - 50, ;
      oBtn2:nLeft    := oRect:nRight - 100, ;
      oBtn1:nLeft    := oRect:nRight - 100  }

   ACTIVATE DIALOG oDlg CENTERED

return nil

Please build and run this program.
You may use this as a template





Nages,
it is very nice.
Since from 1991/1992 ( fw for clipper Rel. 14.4 - Momos)

I use : FiveWin for Harbour March-April 2024 - Harbour 3.2.0dev (harbour_bcc770_32_20240309) - Bcc7.70 - xMate ver. 1.15.3 - PellesC - mail: silvio[dot]falconi[at]gmail[dot]com

Continue the discussion