Razzak,
That is an excellent example of the Dialog syntax.
May I add that top and left are relative to the screen.
That may not always be what you want.
The form may be moved by the user.
You may want to display the dialog, pause, or choose relative to some control
on the form, regardless of it's current position.
Here is some code that will calculate the correct top and left so the dialog is
always displayed in the same place relative to a control on the form.
vRefControlID is the ComponentID of the target control
SET VAR vTmp TEXT = NULL
SET VAR vFormTop INTEGER = 0
SET VAR vFormLeft INTEGER = 0
SET VAR vFormHeight INTEGER = 0
SET VAR vFormWidth INTEGER = 0
SET VAR vClientHeight INTEGER = 0
SET VAR vClientWidth INTEGER = 0
SET VAR vRefControlTop INTEGER = 0
SET VAR vRefControlLeft INTEGER = 0
SET VAR vAddTop INTEGER = 0
SET VAR vAddLeft INTEGER = 0
GETPROPERTY RBASE_FORM CLIENTHEIGHT 'vTmp'
SET VAR vClientHeight = &vTmp
GETPROPERTY RBASE_FORM CLIENTWIDTH 'vTmp'
SET VAR vClientWidth = &vTmp
GETPROPERTY RBASE_FORM HEIGHT 'vTmp'
SET VAR vFormHeight = &vTmp
GETPROPERTY RBASE_FORM WIDTH 'vTmp'
SET VAR vFormWidth = &vTmp
GETPROPERTY RBASE_FORM TOP 'vTmp'
SET VAR vFormTop = &vTmp
GETPROPERTY RBASE_FORM LEFT 'vTmp'
SET VAR vFormLeft = &vTmp
GETPROPERTY &vRefControlID TOP 'vTmp'
SET VAR vRefControlTop = &vTmp
GETPROPERTY &vRefControlID LEFT 'vTmp'
SET VAR vRefControlLeft = &vTmp
SET VAR vShowTop INTEGER = 0
SET VAR vShowTop = +
(.vFormHeight - .vClientHeight + .vFormTop + .vRefControlTop)
SET VAR vShowLeft INTEGER = 0
SET VAR vShowLeft = +
(.vFormWidth - .vClientWidth + .vFormLeft + .vRefControlLeft)
Having fun!
Very Best R:egards,
Dennis
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of A. Razzak Memon
Sent: Wednesday, November 18, 2009 10:16 AM
To: RBASE-L Mailing List
Subject: [RBASE-L] - Re: DIALOG BOX LOCATION
At 11:08 AM 11/18/2009, Jim Belisle wrote:
>What would I add to my code to make the dialog box popup in a
>specific location?
Use TOP and LEFT parameters of the DIALOG OPTIONs to achieve your goal.
Here's how
-- Example:
CLS
SET VAR vDialogMessage = +
('Line 1:'+(CHAR(009))+(CHAR(009))&'Contents of Line 1'+(CHAR(013))+ +
'Line 2:'+(CHAR(009))+(CHAR(009))&'Contents of Line 2'+(CHAR(013))+ +
'Line 3:'+(CHAR(009))+(CHAR(009))&'Contents of Line 3'+(CHAR(013))+ +
'Line 4:'+(CHAR(009))+(CHAR(009))&'Contents of Line 4'+(CHAR(013))+ +
'Line 5:'+(CHAR(009))+(CHAR(009))&'Contents of Line 5'+(CHAR(013))+ +
'Line 6:'+(CHAR(009))+(CHAR(009))&'Contents of Line 6'+(CHAR(013))+ +
'Line 7:'+(CHAR(009))+(CHAR(009))&'Contents of Line 7'+(CHAR(013))+ +
'Line 8:'+(CHAR(009))+(CHAR(009))&'Contents of Line 8'+(CHAR(013))+ +
'Line 9:'+(CHAR(009))+(CHAR(009))&'Contents of Line 9'++(CHAR(013)))
DIALOG .vDialogMessage vYesNo vEndKey YES +
CAPTION ' Your Dialog Caption Here ...' +
ICON APP +
OPTION TITLE_FONT_COLOR BLACK +
|TITLE_BACK_COLOR WHITE +
|TRANSPARENCY 255 +
|WINDOW_BACK_COLOR WHITE +
|BUTTON_YES_CAPTION &Start +
|BUTTON_NO_CAPTION &Cancel +
|BUTTON_YES_COLOR GREEN +
|BUTTON_NO_COLOR RED +
|BUTTON_YES_FONT_COLOR WHITE +
|BUTTON_NO_FONT_COLOR WHITE +
|TOP 50 +
|LEFT 50
Have fun!
Very Best R:egards,
Razzak.