public class Form1 : System.Windows.Forms.Form
{
private System.ComponentModel.IContainer components;
[DllImport("user32.dll")]
public static extern IntPtr GetMenu(IntPtr hwnd);
[DllImport("user32.dll")]
public static extern IntPtr GetSubMenu(IntPtr hMenu,int nPos);
[DllImport("user32.dll")]
public static extern IntPtr GetMenuItemID(IntPtr hMenu, int nPos);
[DllImport("user32.dll")]
public static extern int SetMenuItemBitmaps(IntPtr hMenu, IntPtr nPosition, int wFlags, IntPtr hBitmapUnchecked, IntPtr hBitmapChecked);---------------------------------------------------------------------
private void Form1_Load(object sender, System.EventArgs e)
{
IntPtr intptrMenu,intptrSubMenu,intptrMenuItemID = IntPtr.Zero;
int intRet = 0;
intptrMenu = GetMenu(this.Handle);
intptrSubMenu = GetSubMenu(intptrMenu, 0);
intptrMenuItemID = GetMenuItemID(intptrSubMenu, 0);
Bitmap myBitmap=new Bitmap(System.Environment.CurrentDirectory+"\\Images\\1.bmp");
Color backColor = myBitmap.GetPixel(1, 1);
myBitmap.MakeTransparent(backColor);
IntPtr intp = myBitmap.GetHbitmap();
intRet = SetMenuItemBitmaps(intptrMenu, intptrMenuItemID, 0 ,intp, intp);
intptrMenuItemID = GetMenuItemID(intptrSubMenu, 2);
myBitmap = new Bitmap(System.Environment.CurrentDirectory+"\\Images\\2.bmp");
backColor = myBitmap.GetPixel(1, 1);
myBitmap.MakeTransparent(backColor);
intp = myBitmap.GetHbitmap();
intRet = SetMenuItemBitmaps(intptrMenu, intptrMenuItemID, 0 ,intp, intp);
{
private System.ComponentModel.IContainer components;
[DllImport("user32.dll")]
public static extern IntPtr GetMenu(IntPtr hwnd);
[DllImport("user32.dll")]
public static extern IntPtr GetSubMenu(IntPtr hMenu,int nPos);
[DllImport("user32.dll")]
public static extern IntPtr GetMenuItemID(IntPtr hMenu, int nPos);
[DllImport("user32.dll")]
public static extern int SetMenuItemBitmaps(IntPtr hMenu, IntPtr nPosition, int wFlags, IntPtr hBitmapUnchecked, IntPtr hBitmapChecked);---------------------------------------------------------------------
private void Form1_Load(object sender, System.EventArgs e)
{
IntPtr intptrMenu,intptrSubMenu,intptrMenuItemID = IntPtr.Zero;
int intRet = 0;
intptrMenu = GetMenu(this.Handle);
intptrSubMenu = GetSubMenu(intptrMenu, 0);
intptrMenuItemID = GetMenuItemID(intptrSubMenu, 0);
Bitmap myBitmap=new Bitmap(System.Environment.CurrentDirectory+"\\Images\\1.bmp");
Color backColor = myBitmap.GetPixel(1, 1);
myBitmap.MakeTransparent(backColor);
IntPtr intp = myBitmap.GetHbitmap();
intRet = SetMenuItemBitmaps(intptrMenu, intptrMenuItemID, 0 ,intp, intp);
intptrMenuItemID = GetMenuItemID(intptrSubMenu, 2);
myBitmap = new Bitmap(System.Environment.CurrentDirectory+"\\Images\\2.bmp");
backColor = myBitmap.GetPixel(1, 1);
myBitmap.MakeTransparent(backColor);
intp = myBitmap.GetHbitmap();
intRet = SetMenuItemBitmaps(intptrMenu, intptrMenuItemID, 0 ,intp, intp);
using System.Drawing;
using System.Windows.Forms;class HelpMenu: Form
{
Bitmap bmHelp; public static void Main()
{
Application.Run(new HelpMenu());
}
public HelpMenu()
{
Text = "Help Menu"; bmHelp = new Bitmap(GetType(), "HelpMenu.Bighelp.bmp"); Menu = new MainMenu();
Menu.MenuItems.Add("&Help"); MenuItem mi = new MenuItem("&Help");
mi.OwnerDraw = true;
mi.Click += new EventHandler(MenuHelpOnClick);
mi.DrawItem += new DrawItemEventHandler(MenuHelpOnDrawItem);
mi.MeasureItem +=
new MeasureItemEventHandler(MenuHelpOnMeasureItem); Menu.MenuItems[0].MenuItems.Add(mi);
}
void MenuHelpOnMeasureItem(object obj, MeasureItemEventArgs miea)
{
miea.ItemWidth = bmHelp.Width;
miea.ItemHeight = bmHelp.Height;
}
void MenuHelpOnDrawItem(object obj, DrawItemEventArgs diea)
{
Rectangle rect = diea.Bounds;
rect.X += diea.Bounds.Width - bmHelp.Width;
rect.Width = bmHelp.Width; diea.DrawBackground();
diea.Graphics.DrawImage(bmHelp, rect);
}
void MenuHelpOnClick(object obj, EventArgs ea)
{
MessageBox.Show("Help not yet implemented.", Text);
}
}