Modeless UserForm

C

Chris

I am wanting to display a message in Visio that indicates the status of
a macro as it runs. In Access I would normally use the status bar, but
Visio does not seem to have an eqivalent function in VBA. Please
correct me if I am wrong.

So instead I am trying to use a form. Msgbox is unsuitable because I
don't want any user interaction. The macro needs to run uninterupted
by the status messages.

A UserForm in Visio works when ShowMode is set to true, but when I set
it to false (modeless) the form is displayed blank (white). Not very
useful when trying to display a message.

If anyone knows why the modeless form is displayed as blank, or can
suggest another way of achieving my objective, I would greatly
appreciate it.

TIA

Chris
 
J

JuneTheSecond

I wonder if i don't understand you. The back color of MsgBox and UserForm is
the same color of white. Or, would you mean that the text is not shown? I
think you know the text is shown using label or text box in regardless of
modal or modeless.
 
A

Andy

I'm using Visio 2003 and have no problem with modeless UserForms,
whether or not ShowMode is true or false. When you are displaying the
UserForm, are you passing vbModeless to the show method?
 
C

Chris

Hi Andy,

Thanks for the pointer regarding the Show method option, I didn't have
it set. Unfortunately making the change hasn't solved the problem.
The only time the form doesn't blank to white is when the Show method
option and the Showmodal form property are set to modal/true.

I'm using Visio 2003.

Chris
 
J

JuneTheSecond

I am afraid I do not yet understand you. Are you working UserForm in VBA?
I thought UserForm does not have Showmodal property nor option to set to
modal/true, but Show method has an boolean argument, the value of argiment
is vbModal (0) or vbModeless (1), not true (-1) or false (0). I usually write
code like, "UserForm.Show vbModeless".
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top