VC对话框的菜单添加快捷键

要在VC对话框上,为菜单添加快捷键,步骤如下:

1、先创建快捷键资源表IDR_ACCELERATOR1,在表中将快捷键与菜单ID绑定

2、在对话框的.h文件中,声明快捷键资源句柄  HACCEL m_Haccel;

3、在OnInitDialog函数中添加代码:

//加载快捷键资源表  
m_Haccel = LoadAccelerators(theApp.m_hInstance,(LPCTSTR)IDR_ACCELERATOR1);

4、添加快捷键消息处理虚函数,如下:

BOOL CTestDlg::PreTranslateMessage(MSG* pMsg)  
{   //处理快捷键消息  
    if(m_Haccel)  
    {  
        if(TranslateAccelerator(m_hWnd,m_Haccel,pMsg))  
            return TRUE;  
    }  
  
    return CDialogEx::PreTranslateMessage(pMsg);  
}

5、在资源中,右键为菜单添加事件处理方法

另外,给菜单添加小图标,代码如下:

1、在对话框窗口中.h文件中声明 CBitmap  m_bmp;

2、在对话框的OnInitDialog函数中添加代码:

m_bmp.LoadBitmap(IDB_BITMAP1);  
GetMenu()->GetSubMenu(0)->SetMenuItemBitmaps(1,MF_BYPOSITION, &m_bmp, &m_bmp);  
//函数的第1个参数为菜单位置
时间: 2024-10-12 13:45:11

VC对话框的菜单添加快捷键的相关文章

VC对话框的菜单设置变灰, 打勾 等

一般可以用UPDATE_COMMAND_UI消息,并加入以下代码:pCmdUI->Enable(FALSE); 就实现,弹对话框的菜单需要增加对WM_INITMENUPOPUP消息的处理以后,才可以响应UPDATE_COMMAND_UI. 原因 https://support.microsoft.com/zh-cn/help/242577/you-cannot-change-the-state-of-a-menu-item-from-its-command-user-interface-hand

VC对话框添加工具栏

在VC对话框中添加工具栏,要分为如下几步操作. 1.在资源视图中添加toolbar类资源,在工具栏上添加按钮,并命名ID:ID_BTN1,ID_BTN2 2.对话框头文件中,添加变量CToolBar  m_ToolBar; 3.在对话框的OnInitDialogh函数中添加如下代码: // TODO: 在此添加额外的初始化代码       if( !m_ToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE |          CB

VC 对话框程序添加工具栏按钮图标及其按钮tooltip

注意:本人使用VC++2010开发环境进行测试. 在使用VC开发对话框程序时不像开发单文档程序和多文档程序那么方便,很多资源都需要自己手动添加.最近在开发一个程序时,想尝试在对话框程序里面添加 工具栏 及其 按钮tooltip,于是便有了这篇文章,希望把经验总结下来以方便自己以后查询以及各位同仁查询! 一.首先建立一个对话框程序 1.添加工具栏资源,并在工具栏资源里添加几个按钮,并将按钮的width 和 height 改为24,也可以根据自己的需要更改尺寸,同时,还要为相应的按钮设置一个ID.具

【转】VS2010/MFC编程入门之八(对话框:创建对话框类和添加控件变量)

原文网址:http://www.jizhuomi.com/software/153.html 前两讲中鸡啄米为大家讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.鸡啄米再声明下,生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 因为鸡啄米给大家的例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx类派生的.大家用过VC++6.0

VS2010/MFC对话框:创建对话框类和添加控件变量

创建对话框类和添加控件变量 前两讲中讲解了如何创建对话框资源.创建好对话框资源后要做的就是生成对话框类了.生成对话框类主要包括新建对话框类.添加控件变量和控件的消息处理函数等. 例程Addition是基于对话框的程序,所以程序自动创建了对话框模板IDD_ADDITION_DIALOG,并自动生成了对话框类CAdditionDlg,它是从CDialogEx类派生的.大家用过VC++ 6.0的可能记得,我们定义的对话框类都是从CDialog类派生的,但在VS2010中,一般对话框类都是继承自CDia

[原]MFC中DIALOG(对话框)程序响应加速键(快捷键)

[原]MFC中DIALOG(对话框)程序响应加速键(快捷键) 2014-8-6阅读266 评论0 新建一个对话框程序,项目名为Test,删除默认确定,取消和静态文本框控件.添加一个按钮,Caption修改为“打开”,ID为IDC_Open,双击该按钮添加响应函数,响应函数如下: void CTestDlg::OnBnClickedOpen() { MessageBox("打开 被按下"); } 即程序运行之后点击“打开”则弹出一个对话框. 下面为这个按钮添加快捷键ctrl+o.左下角切

VS2010的MFC对话框程序中添加菜单栏的过程

VS2010的MFC对话框程序中添加菜单栏的过程 最近在看一个用MFC写的界面的项目的代码,在代码和界面中一直没有看到关于菜单控件是如何添加进对话框的,于是就百度了下.结果,与其它控件(Button等)添加的方式不一样: VS2010的MFC对话框程序中添加菜单栏的过程大致分了这五步. 一.将Menu加入Resource视图中 在WorkSpace中的Resource视图下,在左边目录的任意位置上,先右键-->选择Insert Resource(插入资源)选项,在弹出的对话框中选择Menu以后,

修改VC++6.0代码提示快捷键设置

工具-->定制,弹出定制对话框: 然后点击键盘,类别选择编辑,命令选择CompleteWord,在按下新快捷键位置输入新快捷键,然后点击右上角的分配,如图: 修改VC++6.0代码提示快捷键设置,布布扣,bubuko.com

基于MFC对话框程序中添加菜单栏 (CMenu)

vs2013MFC对话框程序中添加菜单栏的过程,我大致分了这五步. 一.将Menu加入Resource视图中 在WorkSpace中的Resource视图下,在任意一个文件夹图标上,右击选择Insert(插入)选项,在弹出的对话框中选择Menu以后,再点击,new按钮,菜单就会添加成功了,但是现在还没有完成,还不能进行编译,因为现在的菜单时空的,在编译的时候会被清除的. 二.用菜单编辑器添加菜单栏及菜单项 菜单添加成功后,菜单编辑器自动打开,可以在其中添加菜单栏及菜单项,比较简单. 三.将菜单加