Solved

How to stop MS Word Ribbon disappearing when using tOLEContainer and switching focus

Posted on 2011-02-25
2
1,884 Views
Last Modified: 2012-05-11
VB Answers also welcome.

We are using Delphi with OLE to create a screen like outlook's email screen (when you create a new email).  Outlook uses OLE to embed MS Word as the editor.  In outlook the To, CC, BCC and Subject feilds appear above the message body.  The MS word ribbon appears accross the top.

We got everything working almost perfectly!  See this link http://www.experts-exchange.com/Programming/Languages/Pascal/Delphi/Q_26808908.html.

We have a word document embedded in a TOleContainer with the following code to create/show:
            OleContainer.CreateObject('Word.Document',False);
            OleContainer.DoVerb(ovShow);

THE PROBLEM: We have other Delphi controls (eg: TDBEdit etc) on the form (for the purpose of Email To, Subject & a few other things).  Whilst the word document is active the word toolbars/ribbon are shown, but when we click away into one of the Delphi controls the toolbars/ribbons disappear until we call OleContainer.DoVerb(ovShow) again.  The problem is the dissappearance of the ribbon when the tOLEContainer loses focus - because the ribbon is aligned to top everything jumps up (which looks really bad).  I want to create a header section that works like outlook & keeps the ribbon visible whilst enterign the subject.

QUESTION: Is there any way we can do any of the following
a) permanently have the toolbars/ribbons show whilst the word document doesn’t have focus?  
b) create a header section with our objects that are embedded inside WORD (so they don't take focus away from word)???

I doubt there is a solution to this.  I mean even if you embed WORD in Excel the WORD ribbon dissapears when you click on a cell in Excel (ie remove focus from WORD).

BUT Somehow Outlook makes it work - points go to anyone who can explain how.

FYI - I have a cludge to this.  Basically take a screenshot and paste the result into an image at the top of the form when the tOLEContainer loses focus.  For added effect darken it.
0
Comment
Question by:enigmasolutions
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
2 Comments
 
LVL 1

Accepted Solution

by:
enigmasolutions earned 0 total points
ID: 35178438
Well it seems that no-one has a better solution.

Anyway the screen shot idea worked and whilst a nasty cludge the user experience is quite good (except when MS word crashes).
0
 
LVL 1

Author Closing Comment

by:enigmasolutions
ID: 35178442
No one has come up with a better solution.
If anyone needs help with this then get in touch with me.
0

Featured Post

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Groupbox Control ? 2 29
VB.NET - Refactor Class per SOLID principles 2 33
Need help with a query 14 39
vb.net application has warrnings about VB6 calls. 2 19
Since .Net 2.0, Visual Basic has made it easy to create a splash screen and set it via the "Splash Screen" drop down in the Project Properties.  A splash screen set in this manner is automatically created, displayed and closed by the framework itsel…
Introduction When many people think of the WebBrowser (http://msdn.microsoft.com/en-us/library/2te2y1x6%28v=VS.85%29.aspx) control, they immediately think of a control which allows the viewing and navigation of web pages. While this is true, it's a…
Finding and deleting duplicate (picture) files can be a time consuming task. My wife and I, our three kids and their families all share one dilemma: Managing our pictures. Between desktops, laptops, phones, tablets, and cameras; over the last decade…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question