C++ AppendMenu


主题


1.  系统菜单下面添加自定义菜单

2.

3.

4.

5.


AppendMenu


The AppendMenu function appends a new item to the end of the
specified menu bar, drop-down menu, submenu, or shortcut menu. You can use
this function to specify the content, appearance, and behavior of the menu
item.

Note  The AppendMenu function has been superseded by the
InsertMenuItem function. You can still use AppendMenu, however, if you do
not need any of the extended features of InsertMenuItem.

BOOL AppendMenu(

HMENU hMenu,        
// handle to menu

UINT uFlags,        
// menu-item options

UINT_PTR uIDNewItem, // identifier, menu, or submenu

LPCTSTR lpNewItem    // menu-item content

);


ID


Value


Description


1.


MF_BITMAP


位图


2.


MF_DISABLED


不可用


3.


MF_ENABLED


可用


4.


MF_GRAYED


灰色


5.


MF_MENUBARBREAK


6.


MF_MENUBREAK


7.


MF_OWNERDRAW


8.


MF_POPUP


9.


MF_SEPARATOR


分隔符号


10.


MF_STRING


字符串


11.


MF_CHECKED


勾上


12.


MF_UNCHECKED


取消勾上

代码::系统菜单下面添加自定义菜单


1.在Resource.h里面
定义1个ID号

#define ID_MENU1 0x1500

2.在::OnInitDialog() 下面添加代码

// TODO: Add extra initialization here

CMenu*    pMenu = GetSystemMenu(FALSE);

CString menu1="新菜单";

pMenu->AppendMenu(MF_SEPARATOR);

pMenu->AppendMenu(MF_STRING, ID_MENU1, menu1);

3.在::OnSysCommand(UINT nID, LPARAM lParam) 下面添加响应单击 这个菜单的代码

void CProject02Dlg::OnSysCommand(UINT nID, LPARAM lParam)

{

if ((nID & 0xFFF0) ==
IDM_ABOUTBOX)

{

CAboutDlg dlgAbout;

dlgAbout.DoModal();

}

else if
(nID==ID_MENU1)

{

MessageBox("YES");

}

else

{

CDialog::OnSysCommand(nID, lParam);

}

}

效果图:

//OnSysCommand


ID


nID


备注:OnSysCommand


1.


SC_CLOSE


Close
the CWnd object.


2.


SC_MAXIMIZE


(or
SC_ZOOM) Maximize the CWnd object.


3.


SC_MINIMIZE


(or
SC_ICON) Minimize the CWnd object.


4.


SC_MOVE


Move
the CWnd object


5.


SC_RESTORE


Restore
window to normal position and size.


6.


SC_SIZE


Size
the CWnd object.


7.


SC_NEXTWINDOW


Move
to the next window.


8.


SC_PREVWINDOW


Move
to the previous window.


9.


SC_KEYMENU


Retrieve
a menu through a keystroke.


10.


SC_MOUSEMENU


Retrieve
a menu through a mouse click.


11.


SC_HOTKEY


Activate
the CWnd object associated with the application-specified hot key.


12.


The
low-order word of lParam identifies the HWND of the window to


13.


SC_SCREENSAVE


Executes
the screen-saver application specified in the [boot] section of the
SYSTEM.INI file.


14.


SC_TASKLIST


Execute
or activate the Windows Task Manager application.


15.


SC_VSCROLL


Scroll
vertically.


16.


SC_HSCROLL


Scroll
horizontally.

来自为知笔记(Wiz)

C++ AppendMenu,布布扣,bubuko.com

时间: 2024-10-27 01:21:07

C++ AppendMenu的相关文章

Delphi通过AppendMenu和DeleteMenu在系统菜单中添加删除菜单项

Delphi在系统菜单中添加删除系统菜单项 Delphi在系统菜单中添加删除系统菜单项,利用Windows提供的API函数GetSystemMenu可以得到窗口的系统菜单句柄,再通过AppendMenu和DeleteMenu就可以添加和删除菜单了. 工具/原料 Delphi7 Windows电脑 方法/步骤 打开Delphi7,创建新的工程,默认新窗体的Name属性为Form1   在Form1的Object Inspector中Events里双击OnCreate为Form1创建OnCreate

#这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有

#!/bin/env python # -*- coding: utf-8 -*- ################################################################################# #这个测试程序有助于我们理解wxPython的界面设计,基本的控件和事件调用都有 ################################################################################# imp

最简单的MFC

#include <SDKDDKVer.h> #include <afxwin.h> #include <afxext.h> #include <iostream> #include <sstream> class MyFrameWnd : public CFrameWnd { public: MyFrameWnd() :CFrameWnd() { Create(0, TEXT("Hello")); m_Menu.Create

c#winform使用WebBrowser 大全

C# WinForm WebBrowser (一) MSDN资料 1.主要用途:使用户可以在窗体中导航网页. 2.注意:WebBrowser 控件会占用大量资源.使用完该控件后一定要调用 Dispose 方法,以便确保及时释放所有资源.必须在附加事件的同一线程上调用 Dispose 方法,该线程应始终是消息或用户界面 (UI) 线程. 3.WebBrowser 使用下面的成员可以将控件导航到特定 URL.在导航历史记录列表中向后和向前移动,还可以加载当前用户的主页和搜索页: 1.URL属性:可读

MFC 菜单编程 -- 总结

菜单结构 一个菜单栏可以有若干个子菜单,而一个子菜单又可有若干个菜单项.对于菜单栏的子菜单,由左至右从0开始索引.对于特定的子菜单的菜单项,由上至下建立从0开始的索引.访问子菜单和菜单项,均可通过其索引或标识进行. 对于在窗口客户区右键弹出的菜单,如果弹出菜单归属View 类窗口,则菜单项只能响应View 和Doc 类消息点击. 如果弹出菜单归属框架窗口,弹出菜单上的消息的路由遵循View -DOC-MainFrame-APP的响应顺序 . 菜单的相关重要函数 CMenu*    GetMenu

C++入门

  C++入门必看,提升必看 Visual C++MFC入门教程 目录 +-- 第一章 VC入门|------ 1.1 如何学好VC|------ 1.2 理解Windows消息机制|------ 1.3 利用Visual C++/MFC开发Windows程序的优势|------ 1.4 利用MFC进行开发的通用方法介绍|------ 1.5 MFC中常用类,宏,函数介绍+-- 第二章 图形输出|------ 2.1 和GUI有关的各种对象|------ 2.2 在窗口中输出文字|------

Delphi在系统菜单中添加菜单项

unit dy219; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private procedure sysmenu(var msg: twmmenuselect);message wm_syscommand;

MFC动态菜单

1.Cmenu3View 键盘获取函数解析 1 void CMenu3View::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags) 2 { 4 CClientDC dc(this);//获取的是view句柄 5 if(0x0d==nChar)//如果检测到回车键进行一下操作 6 { 7 if(0==++m_nIndex)//初始值为-1,说明是第一次回车 8 { 9 m_menu.CreatePopupMenu();//建立菜单 10 GetParent

英文不好也能快速&quot;记忆&quot; API

英文不好不要紧,把API函数导入打字练习类软件,即是练习打字速度,提高编程效率:也能短时间记忆API. 坚持每天打一遍,约2小时,连续打两周,会对API有很好的记忆,此方法是结合英文学习方法!以下是Window API函数例表,大家可以试试效果特别好! AbnormalTermination AbortDoc AbortPath AbortPrinter AbortProc AbortSystemShutdown AccessNtmsLibraryDoor ActivateKeyboardLay