Any way to Format "MsgBox()"

  • Thread starter Thread starter Guest
  • Start date Start date
G

Guest

MsgBox is a very usefull item but it seems to me to be very restrictive. Is
there any way to modify it? i.e. change the size / colour of Text, change the
size / colout of the Dialogue Box. etc, etc.

Thanks RayC
 
MsgBox is a very usefull item but it seems to me to be very restrictive. Is
there any way to modify it? i.e. change the size / colour of Text, change the
size / colout of the Dialogue Box. etc, etc.

Thanks RayC

Only if you change the master settings for the message box for all
Windows and Office Application.
Right- lick on a blank section of the Windows Desktop.
Select Properties +Appearance + Advanced.
Find the Message Box in the drop down. Make your changes and click OK.

I would suggest that rather than change the settings for all
applications, you create your own, unbound form to be used as a
message form.
Add a Label control and a Text control as well as 2 command buttons.
Name the command buttons cmdYes and cmdNo (or whatever you wish).

You can set the font style, size, color, etc., however you wish.

Code the cmdYes button's click event:
TextControlName = 1
Me.Visible = False

Code the cmdNo click event:
TextControlName = 2
Me.Visible = False

You would then open the form, using:

Dim strMessage as String
strMessage = "This is your message"
DoCmd.OpenForm "MessageFormName", , , , , acDialog, strMessage

If forms!MessageFormName!TextControlName = 1 then
' Do the Yes thing
Else
'Do the No thing
End If

DoCmd.Close acForm,"MessageFormName"

Code the Load event of the message box form:
LabelName.Caption = Me.OpenArgs

When the form is opened processing waits (just like a MsgBox) until
you click either command button. Then the Yes or No action will be
taken and the form closed.
 
Only if you change the master settings for the message box for all
Windows and Office Application.
Right- lick on a blank section of the Windows Desktop.
Select Properties +Appearance + Advanced.

Vista setting instructions? The above is not available in Vista.
Find the Message Box in the drop down. Make your changes and click OK.

I would suggest that rather than change the settings for all
applications, you create your own, unbound form to be used as a
message form.
Add a Label control and a Text control as well as 2 command buttons.
Name the command buttons cmdYes and cmdNo (or whatever you wish).

You can set the font style, size, color, etc., however you wish.

Code the cmdYes button's click event:
TextControlName = 1
Me.Visible = False

Code the cmdNo click event:
TextControlName = 2
Me.Visible = False

You would then open the form, using:

Dim strMessage as String
strMessage = "This is your message"
DoCmd.OpenForm "MessageFormName", , , , , acDialog, strMessage

If forms!MessageFormName!TextControlName = 1 then
' Do the Yes thing
Else
'Do the No thing
End If

DoCmd.Close acForm,"MessageFormName"

Code the Load event of the message box form:
LabelName.Caption = Me.OpenArgs

When the form is opened processing waits (just like a MsgBox) until
you click either command button. Then the Yes or No action will be
taken and the form closed.


Does it provide the message as a function of cursor hovering?
 
Back
Top