RE: Centering Windows
Thanks Derek,
The code you sent worked fine.
Long Live Euphoria,
Chris
-----------------------------------------------------------------
Derek Parnell wrote:
> > -----Original Message-----
> > From: president at insight-concepts.com
> > [mailto:president at insight-concepts.com]
> > Sent: Wednesday, 23 May 2001 9:25 AM
> > To: EUforum
> > Subject: Centering Windows
> >
> > Does anyone know how to center win32lib windows no matter
> > what the screen
> > resolution is?
>
> Try this procedure.
>
> ---------------
> --/Topic Utilities
> --/proc centerWindow(integer id, integer referid)
> --/desc Moves /i id control to the center of /i refid control.
> --If /i refid is zero then the Screen is used.
> --
> --Example:
> --/code
> -- -- Move the window to the center of the screen.
> -- centreWindow( myWIN, 0)
> -- -- Move the button to the center of the window.
> -- centreWindow( myButton, myWIN)
> --/endcode
> procedure centreWindow(integer id, integer referid)
> sequence lRect, lClient, lRefRect
> trace(1)
> -- use Screen if no referid supplied.
> if referid = 0 then
> referid = Screen
> end if
>
> -- Get width and height of the window.
> lRect = {0, 0} & getCtlSize(id)
>
> -- Get left, top, right, bottom co-ordinates
> -- of the reference control client area.
> lRefRect = getClientRect(referid)
>
> -- Calculate reference client area width and height
> lRefRect[3] = lRefRect[3] - lRefRect[1]
> lRefRect[4] = lRefRect[4] - lRefRect[2]
>
> -- Calculate new left and top co-ordinates
> lRect[1] = floor((lRefRect[3] - lRect[3]) * 0.5)
> lRect[2] = floor((lRefRect[4] - lRect[4]) * 0.5)
>
> -- Move the window to the new position and repaint it.
<snip>
|
Not Categorized, Please Help
|
|