FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin for CA-Clipper Auto centering in dialog
Posts: 74
Joined: Thu Oct 20, 2005 04:30 PM
Auto centering in dialog
Posted: Thu Nov 30, 2006 08:16 PM

Hi All,

I would like to automatically center a button in a dialog box. I can`t find out how to do this. Is there a way it can be done ?

Regards,

Gilbert Vaillancourt
turbolog@videotron.ca
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Re: Auto centering in dialog
Posted: Fri Dec 01, 2006 09:06 AM
This is a working sample:

#include "Fivewin.ch"


FUNCTION MAIN()

    LOCAL oDlg

    LOCAL oBtn

    DEFINE DIALOG oDlg

    @ 0, 0 BUTTON oBtn PROMPT "&Close";
           ACTION oDlg:End()

    ACTIVATE DIALOG oDlg;
             ON INIT CENTERBTN( oDlg, oBtn );
             CENTER

    RETURN NIL


STATIC FUNCTION CENTERBTN( oDlg, oBtn )

    LOCAL aDlgRect := GETCLIENTRECT( oDlg:hWnd )

    LOCAL nDlgWidth  := aDlgRect[ 4 ] - aDlgRect[ 2 ]
    LOCAL nDlgHeight := aDlgRect[ 3 ] - aDlgRect[ 1 ]

    LOCAL nRow := ( nDlgHeight - oBtn:nHeight() ) / 2
    LOCAL nCol := ( nDlgWidth - oBtn:nWidth() ) / 2

    oBtn:Move( nRow, nCol )

    RETURN NIL


EMG
Posts: 74
Joined: Thu Oct 20, 2005 04:30 PM
Auto centering in dialog
Posted: Fri Dec 01, 2006 09:25 PM

Hi Enrico,

Hi sure will do some testing this week end.

Thanks

Regards,

Gilbert

Gilbert Vaillancourt
turbolog@videotron.ca
Posts: 74
Joined: Thu Oct 20, 2005 04:30 PM
Auto centering in dialog
Posted: Sat Dec 02, 2006 01:20 AM

Hi Enrico,

It`s a bit more complicated that I tought it would be, but it works nicely.

Thanks
Regards,

Gilbert

Gilbert Vaillancourt
turbolog@videotron.ca

Continue the discussion