We help IT Professionals succeed at work.

Loading and merging a menu from a form

khenr29j
khenr29j asked
on
Medium Priority
191 Views
Last Modified: 2010-04-04
I am trying to create a customizable toolbar for my project which uses an MDI form and children. To be able to customize the toolbar I would like to list the items available in the menus and have the user select one. I would also like the user to be able to edit the toolbar without having opened a child window. To do this I need to load the contents of a child window menu and merge it with the current menu and use the results. Creating a new child window and setting visible to false isn't allowed for MDI children. Any suggestions?
Comment
Watch Question

Commented:
Do you want the toolbar a floating one (aka PaintShop Pro style)
or a fixed one like Word etc?

Author

Commented:
I am using the TToolbar component of Delphi 3.0, but it's not really important to the question. I would like to examine the contents of the menus on the MDI child. For example, I keep the Edit menu item on the child so that it's only available when a child window is open. But this also means that I don't know what's on that menu until I actually create a child window.
Commented:
It sounds like you understand how to merge the two forms windows together, but your having a problem merging the two because you dont have access to one.  You can have access to teh child window by creating it, but not showiing it.  To hide a MDI child, use the API call;

showwindow(THE_NAME_OF_YOUR_FORM.handle,SW_Hide);

Now you access to your childs components and you can merge the menus like you would for any visible form.  Any questions, please ask.

PS: - To show a hidden MDI Child window use;

showwindow(THE_NAME_OF_YOUR_FORM.handle,SW_SHOWMAXIMIZED);  // or SW_SHOWNORMAL

Not the solution you were looking for? Getting a personalized solution is easy.

Ask the Experts
Access more of Experts Exchange with a free account
Thanks for using Experts Exchange.

Create a free account to continue.

Limited access with a free account allows you to:

  • View three pieces of content (articles, solutions, posts, and videos)
  • Ask the experts questions (counted toward content limit)
  • Customize your dashboard and profile

*This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

OR

Please enter a first name

Please enter a last name

8+ characters (letters, numbers, and a symbol)

By clicking, you agree to the Terms of Use and Privacy Policy.