mfc怎么添加工具栏
『壹』 mfc 在对话框中添加工具栏,如何操作实现
||在头文件实例化CToolBar m_toolbar;
if (! m_toolbar.CreateEx( this,TBSTYLE_FLAT , WS_CHILD | WS_VISIBLE | CBRS_ALIGN_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS,
CRect(2,2,0,0)) ||专 ! m_toolbar.LoadToolBar(“你的工具属栏ID”) )
{
TRACE0("failed to create toolbar\n");
return FALSE;
}
m_toolbar.ShowWindow(SW_SHOW);
RepositionBars(AFX_IDW_CONTROLBAR_FIRST, AFX_IDW_CONTROLBAR_LAST, 0);
『贰』 MFC中如何添加自定义工具栏图标工具栏
直接在工具条资源里面粘贴图案就可以了,这个最省事,不需要编辑对应ID,也不需要代码。
『叁』 mfc 怎么在工具栏中添加控件
在ResourceView里,双击Toolbar,双击IDR_MAINFRAME,
就出现了工具条编辑界面,默认的最右边那个灰按钮就是用来添加版新按钮的,
双击它,会弹出权对话框让给新按钮取个ID,取完后关掉对话框.
就会多出一个按钮,可以在这个界面下给按钮画下简单的图案.
『肆』 在mfc怎样在工具条中添加编辑框
在CMainFrame中建两个对象
CMFCToolBar m_myToolBar; //工具条
CComboBox m_comboList; //下拉框
创建一个工具栏资源IDR_MYTOOLBAR,其中一个按钮id为ID_BUTTONCOMBO
在int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)添加 ,代码如下:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWndEx::OnCreate(lpCreateStruct) == -1)
return -1;
BOOL bNameValid;
// 基于持久值设置视觉管理器和样式
OnApplicationLook(theApp.m_nAppLook);
if (!m_wndMenuBar.Create(this))
{
TRACE0("未能创建菜单栏\n");
return -1; // 未能创建
}
m_wndMenuBar.SetPaneStyle(m_wndMenuBar.GetPaneStyle() | CBRS_SIZE_DYNAMIC | CBRS_TOOLTIPS | CBRS_FLYBY);
// 防止菜单栏在激活时获得焦点
CMFCPopupMenu::SetForceMenuFocus(FALSE);
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(theApp.m_bHiColorIcons ? IDR_MAINFRAME_256 : IDR_MAINFRAME))
{
TRACE0("未能创建工具栏\n");
return -1; // 未能创建
}
if (!m_myToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_myToolBar.LoadToolBar(IDR_MYTOOLBAR ))
{
TRACE0("未能创建工具栏\n");
return -1; // 未能创建
}
CString strToolBarName;
bNameValid = strToolBarName.LoadString(IDS_TOOLBAR_STANDARD);
ASSERT(bNameValid);
m_wndToolBar.SetWindowText(strToolBarName);
CString strCustomize;
bNameValid = strCustomize.LoadString(IDS_TOOLBAR_CUSTOMIZE);
ASSERT(bNameValid);
m_wndToolBar.EnableCustomizeButton(TRUE, ID_VIEW_CUSTOMIZE, strCustomize);
// 允许用户定义的工具栏操作:
InitUserToolbars(NULL, uiFirstUserToolBarId, uiLastUserToolBarId);
if (!m_wndStatusBar.Create(this))
{
TRACE0("未能创建状态栏\n");
return -1; // 未能创建
}
m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT));
// TODO: 如果您不希望工具栏和菜单栏可停靠,请删除这五行
m_wndMenuBar.EnableDocking(CBRS_ALIGN_ANY);
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
m_myToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockPane(&m_wndMenuBar);
DockPane(&m_wndToolBar);
DockPane(&m_myToolBar);
// 启用 Visual Studio 2005 样式停靠窗口行为
CDockingManager::SetDockingMode(DT_SMART);
// 启用 Visual Studio 2005 样式停靠窗口自动隐藏行为
EnableAutoHidePanes(CBRS_ALIGN_ANY);
// 启用工具栏和停靠窗口菜单替换
EnablePaneMenu(TRUE, ID_VIEW_CUSTOMIZE, strCustomize, ID_VIEW_TOOLBAR);
// 启用快速(按住 Alt 拖动)工具栏自定义
CMFCToolBar::EnableQuickCustomization();
// if (CMFCToolBar::GetUserImages() == NULL)
// {
// // 加载用户定义的工具栏图像
// if (m_UserImages.Load(_T(".\\UserImages.bmp")))
// {
// m_UserImages.SetImageSize(CSize(16, 16), FALSE);
// CMFCToolBar::SetUserImages(&m_UserImages);
// }
// }
// 启用菜单个性化(最近使用的命令)
// TODO: 定义您自己的基本命令,确保每个下拉菜单至少有一个基本命令。
CList<UINT, UINT> lstBasicCommands;
lstBasicCommands.AddTail(ID_FILE_NEW);
lstBasicCommands.AddTail(ID_FILE_OPEN);
lstBasicCommands.AddTail(ID_FILE_SAVE);
lstBasicCommands.AddTail(ID_FILE_PRINT);
lstBasicCommands.AddTail(ID_APP_EXIT);
lstBasicCommands.AddTail(ID_EDIT_CUT);
lstBasicCommands.AddTail(ID_EDIT_PASTE);
lstBasicCommands.AddTail(ID_EDIT_UNDO);
lstBasicCommands.AddTail(ID_APP_ABOUT);
lstBasicCommands.AddTail(ID_VIEW_STATUS_BAR);
lstBasicCommands.AddTail(ID_VIEW_TOOLBAR);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2003);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_VS_2005);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLUE);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_SILVER);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_BLACK);
lstBasicCommands.AddTail(ID_VIEW_APPLOOK_OFF_2007_AQUA);
CMFCToolBar::SetBasicCommands(lstBasicCommands);
int index = 0;
RECT rect;
//找到指定的工具项
while(m_myToolBar.GetItemID(index)!=ID_BUTTONCOMBO)
index++;
//设置指定工具项的宽度并获取新的区域 80是宽度
m_myToolBar.SetButtonInfo(index, ID_BUTTONCOMBO, TBBS_SEPARATOR, 60);
m_myToolBar.GetItemRect(index, &rect);
//设置位置
// rect.top+=2;
// rect.bottom += 200;
rect.left = 0;
rect.top = 2;
rect.right = 60;
rect.bottom = 200;
// 创建并显示控件
if(!m_comboList.Create(WS_CHILD|WS_VISIBLE| CBS_AUTOHSCROLL| CBS_DROPDOWNLIST | CBS_HASSTRINGS , rect,
&m_myToolBar, ID_BUTTONCOMBO))
{
TRACE0("Failed to create combo-box\n");
return FALSE;
}
//填充内容
m_comboList.AddString("25%");
m_comboList.AddString("50%");
m_comboList.AddString("75%");
m_comboList.AddString("100%");
m_comboList.AddString("125%");
m_comboList.AddString("150%");
m_comboList.AddString("175%");
m_comboList.AddString("200%");
//选择默认项
m_comboList.SetCurSel(3);
m_comboList.ShowWindow(SW_SHOW);
return 0;
}
希望对你有帮助,这个以前我做过的,忘了,刚才看了你的题又花了老多时间看了一下。。。。
『伍』 (MFC)菜鸟求助!如何给工具栏添加事件谢谢了,大神帮忙啊
工具栏中的控件复都关联制了一个ID号,双击控件你会看到。进入MFC ClassWizzard(类向导),假设你要在CMainFrame中响应工具控件,选中你要处理的工具控件的ID,选择CMainFrame类,Message:Commend(命令响应);选择ADD FUNCTION(添加函数)OK; 在函数中加入你的代码。
『陆』 如何用vc在mfc工具栏中增加新的按钮
在ResourceView里来,双击Toolbar,双击IDR_MAINFRAME,就出现自了工具条编辑界面,默认的最右边那个灰按钮就是用来添加新按钮的,双击它,会弹出对话框让你给新按钮取个ID,取完后关掉对话框,就会多出一个按钮,你可以在这个界面下给按钮画下简单的图案.
按钮的响应函数一般没规定写在哪个文件里,你看写在哪对整个工程实现时比较方便或者看起来比较规范,就写在哪个文件
『柒』 MFC怎么给工具栏按钮加上快捷键
所有快捷键其实都是针对ID的。工具条的和菜单的,没有任何区别专。
资源中有一项,叫属Accelerator,这里针对工具条按钮ID增加快捷键即可。
至于“按钮是会根据键盘的按键来显示按下状态” 就是一个Checked状态,相应函数中设置SetCheck即可。
『捌』 在mfc怎样在工具条中添加编辑框
在CMainFrame中加抄成员变量CComboBoxm_comboList;CStaticm_static;然后是OnCreate()中添加代码,注释掉的是添加下拉框的代码,如下:intCMainFrame::OnCreate(LPCREATESTRUCTlpCreateStruct){if(CFrameWndEx::OnCreate(lpCreateStruct
『玖』 MFC中如何在菜单栏中添加按钮
在窗口上放置一个combox控件,然后绑定ccomboxex类变量调用insert函数插入文本就可以了
『拾』 mfc的对话框程序怎么加菜单栏
添加一个菜单资源,比如:idr_menu1。
编辑修改菜单成泥想要的样子。
然后再你的对话框属性的菜单栏中选中刚才创建的idr_menu1。