A Microsoft Outlook email forum. Outlook Banter

If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.

Go Back   Home » Outlook Banter forum » Microsoft Outlook Email Newsgroups » Outlook and VBA
Site Map Home Register Authors List Search Today's Posts Mark Forums Read Web Partners

MsgBox Hidden



 
 
Thread Tools Search this Thread Display Modes
  #1  
Old April 5th 07, 10:18 AM posted to microsoft.public.outlook.program_vba
Lionel H
external usenet poster
 
Posts: 7
Default MsgBox Hidden

I have recently upgraded from Office 2000 to 2003.
I have an ItemSend event handler that reminds me to attach attachments and
fill in the summary line if I click send without doing so. At Office2000, the
MsgBox used always to appear "on top of " the window containing the mail
item. In Outlook 2003 the MsgBox is now put "underneath" this window leaving
me thinking my system has frozen. Is there any way to force a MsgBox to the
"top of the pile"?

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the "I
Agree" button in the message pane. If you do not see the button, follow this
link to open the suggestion in the Microsoft Web-based Newsreader and then
click "I Agree" in the message pane.

http://www.microsoft.com/office/comm....program_v ba
  #2  
Old April 5th 07, 08:40 PM posted to microsoft.public.outlook.program_vba
Eric Legault [MVP - Outlook]
external usenet poster
 
Posts: 830
Default MsgBox Hidden

That's odd behaviour for a dialog! It shouldn't be happening, but the only
way to control this is via methods like SetForeGroundWindow or SetWindowPos
via the Win32 API:

SetWindowPlacement Function:
http://msdn.microsoft.com/library/en...asp?frame=true

--
Eric Legault (Outlook MVP, MCDBA, MCTS: Messaging & Collaboration)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"Lionel H" wrote:

I have recently upgraded from Office 2000 to 2003.
I have an ItemSend event handler that reminds me to attach attachments and
fill in the summary line if I click send without doing so. At Office2000, the
MsgBox used always to appear "on top of " the window containing the mail
item. In Outlook 2003 the MsgBox is now put "underneath" this window leaving
me thinking my system has frozen. Is there any way to force a MsgBox to the
"top of the pile"?

----------------
This post is a suggestion for Microsoft, and Microsoft responds to the
suggestions with the most votes. To vote for this suggestion, click the "I
Agree" button in the message pane. If you do not see the button, follow this
link to open the suggestion in the Microsoft Web-based Newsreader and then
click "I Agree" in the message pane.

http://www.microsoft.com/office/comm....program_v ba

  #3  
Old April 10th 07, 10:06 AM posted to microsoft.public.outlook.program_vba
Lionel H
external usenet poster
 
Posts: 7
Default MsgBox Hidden

Eric, thanks for the reply. It will probably help sort out my next problem!
Shortly after I posted the query, I found the WindowState property of the
Inspector object. So before calling the MsgBox function I set
ActiveInspector.WindowState = olMinimised. This worked fine and I could see
the MsgBox dialog box OK. All I had to do then was restore the
ActiveInspector on receipt of the yes/no response. olHelp says nothing about
the possible values for WindowState beyond admitting their existence.
olMaximised and olMinimised are self explanatory, leaving me to guess at the
meaning of olNormalWindow. I chose to assume its use would Restore the
ActiveInspector to its position prior to minimization. It didn’t. There was a
flicker as the ActiveInspector climbed out of the task bar, flew up the
olExplorer window and disappeared off the top of the screen. The next time I
clicked the New button on the explorer, I got a minimized Inspector in the
top left hand corner of the screen. At which point I set the recovery
WindowState to olMaximised and waited for a (your) response.


"Eric Legault [MVP - Outlook]" wrote:

That's odd behaviour for a dialog! It shouldn't be happening, but the only
way to control this is via methods like SetForeGroundWindow or SetWindowPos
via the Win32 API:

SetWindowPlacement Function:
http://msdn.microsoft.com/library/en...asp?frame=true


  #4  
Old April 10th 07, 05:26 PM posted to microsoft.public.outlook.program_vba
Eric Legault [MVP - Outlook]
external usenet poster
 
Posts: 830
Default MsgBox Hidden

I don't envy your position at all. I had to deal with controlling Inspector
windows very thoroughly and during many events when I built my Picture
Attachments Wizard add-in. It wasn't fun, and I had to test a great many
implementations before I found an acceptable solution (which usually involved
timers).

Anyway, in your case I think the best approach would be to use the relevant
Win32 API call to get a handle to your dialog via it's Window Title, and
ensure that it is at the foreground after you display it. If the Inspector
insists on displaying over top of it, use a timer to fire after
Inspector_Activate maybe. You may also want to consider designing a UserForm
to mimic the Message Box, and open it modally.

--
Eric Legault - Outlook MVP, MCDBA, MCTS (SharePoint programming, etc.)
Try Picture Attachments Wizard for Outlook:
http://www.collaborativeinnovations.ca
Blog: http://blogs.officezealot.com/legault/


"Lionel H" wrote:

Eric, thanks for the reply. It will probably help sort out my next problem!
Shortly after I posted the query, I found the WindowState property of the
Inspector object. So before calling the MsgBox function I set
ActiveInspector.WindowState = olMinimised. This worked fine and I could see
the MsgBox dialog box OK. All I had to do then was restore the
ActiveInspector on receipt of the yes/no response. olHelp says nothing about
the possible values for WindowState beyond admitting their existence.
olMaximised and olMinimised are self explanatory, leaving me to guess at the
meaning of olNormalWindow. I chose to assume its use would Restore the
ActiveInspector to its position prior to minimization. It didn’t. There was a
flicker as the ActiveInspector climbed out of the task bar, flew up the
olExplorer window and disappeared off the top of the screen. The next time I
clicked the New button on the explorer, I got a minimized Inspector in the
top left hand corner of the screen. At which point I set the recovery
WindowState to olMaximised and waited for a (your) response.


"Eric Legault [MVP - Outlook]" wrote:

That's odd behaviour for a dialog! It shouldn't be happening, but the only
way to control this is via methods like SetForeGroundWindow or SetWindowPos
via the Win32 API:

SetWindowPlacement Function:
http://msdn.microsoft.com/library/en...asp?frame=true


 




Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Clear multiple MsgBox!!! RemySS Outlook and VBA 4 May 5th 06 10:07 AM
Question on frames and msgbox Jade Outlook - Using Forms 4 April 26th 06 04:12 AM
An Easy Question: How to get a "msgbox" to display? Bernie Outlook and VBA 2 March 30th 06 09:55 PM
An Easy Question: How to get a "msgbox" to display? Bernie Outlook and VBA 0 March 29th 06 11:19 PM
How can I suppress annoying msgbox "enter network password"? maysider Outlook - Installation 2 February 16th 06 03:04 AM


All times are GMT +1. The time now is 06:39 AM.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.Search Engine Friendly URLs by vBSEO 2.4.0
Copyright ©2004-2025 Outlook Banter.
The comments are property of their posters.