Solved

How to add items to title bar menu

Posted on 2004-08-27
5
828 Views
Last Modified: 2008-03-10
Hello.

How do I add  items to the popup menu that appears when you click on an application title bar. (The menu that has Minimize, Maximize, Close etc).

Thanks. js
0
Comment
Question by:jeremiahscott
  • 2
  • 2
5 Comments
 
LVL 2

Expert Comment

by:sonicblis
ID: 11914303
I assume you're speaking of a windows form, like adding "always on top"?
0
 

Author Comment

by:jeremiahscott
ID: 11914560
Yes, I have a windows form.

I probably didn't explain this well. If you click on Internet Explorers title bar you will see a popup menu. The items are [Restore, Move...Close]. If you do the same thing on a windows command prompt window they have added 3 more items [Edit, Defaults, Properties]. I want to mimic that.

thx
0
 
LVL 19

Accepted Solution

by:
Desp earned 100 total points
ID: 11919539
[DllImport("user32.dll")]
private static extern IntPtr GetSystemMenu(IntPtr hWnd, bool bRevert);

[DllImport("user32.dll")]
private static extern bool AppendMenu (IntPtr hMenu, Int32 wFlags, Int32
wIDNewItem, string lpNewItem);

public const Int32 WM_SYSCOMMAND = 0x112;
public const Int32 MF_SEPARATOR = 0x800;
public const Int32 MF_STRING = 0x0;
public const Int32 IDM_ABOUT  = 1000;

private void Form1_Load(object sender, System.EventArgs e)
{
IntPtr sysMenuHandle = GetSystemMenu(this.Handle, false);
AppendMenu(sysMenuHandle, MF_SEPARATOR, 0, string.Empty);
AppendMenu(sysMenuHandle, MF_STRING, IDM_ABOUT, "About...");
}

protected override void WndProc(ref Message m)
{
if(m.Msg == WM_SYSCOMMAND)
 switch(m.WParam.ToInt32())
 {
  case IDM_ABOUT :
    MessageBox.Show("This is About dialog");
   return;
  default:
   break;
 } base.WndProc(ref m);
}
0
 

Author Comment

by:jeremiahscott
ID: 11922857
I got it working. Thanks. I couldn't figure out what that menu was called. "System Menu"
0
 
LVL 19

Expert Comment

by:Desp
ID: 11924580
User menu are the menus designed and developed by the programmer himself(like Mainmenu and ContextMenu control). SystemMenu is something common functaionality provided by the Operating system.
0

Featured Post

What Should I Do With This Threat Intelligence?

Are you wondering if you actually need threat intelligence? The answer is yes. We explain the basics for creating useful threat intelligence.

Join & Write a Comment

Suggested Solutions

Bit flags and bit flag manipulation is perhaps one of the most underrated strategies in programming, likely because most programmers developing in high-level languages rely too much on the high-level features, and forget about the low-level ones. Th…
Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Here's a very brief overview of the methods PRTG Network Monitor (https://www.paessler.com/prtg) offers for monitoring bandwidth, to help you decide which methods you´d like to investigate in more detail.  The methods are covered in more detail in o…

743 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now