- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VC中如何创建多个工具条
VC中如何创建多个工具条 ?????? ? 在实际的软件开发中,我们常常需要创建多个自定义的工具条,并且要象标准的工具条那样,允许用户通过鼠标将自定义的工具条移动到框架的其它地方,还可以根据需要显示或是隐藏该工具条。通过实践,我们在Visual C++ 6.0中编程实现了创建自定义的工具条,从而在应用程序中可并存多个工具条。
1. 在Visual C++ 6.0中用AppWizard以默认方式创建SDI或MDI的应用程序工程,工程名称为MyBars。
2. 在ResourceView中选择“Toolbar”并点击右键,通过选择 “Insert Toolbar”新建一工具条,其ID值设为ID_MYTOOLBAR。在该工具条上添加两个位图按钮,并双击每个位图按钮,设置其ID值分别为ID_MYTOOLBAR_CIRCLE和ID_MYTOOLBAR_RECT。
3. 在MainFrame.h文件中CMainFrame类定义的前面定义一个映射工具条按钮图像和程序命令ID 的数组,这是一个UINT类型的数组:
static UINT BASED_CODE My_Buttons[]=
{ // 要和工具条中位图的次序一样
ID_TOOLBAR_CIRCLE,
ID_TOOLBAR_RECT};
4. 在CMainFrame类中添加一工具条对象指针m_pMyToolBar:
class CMainFrame : public CFrameWnd
{……
protected:
CStatusBar m_wndStatusBar;
CToolBar m_wndToolBar;
CToolBar m_pMyToolBar;
// 新添加的工具条对象指针
……}
5.在CMainFrame::OnCreate函数中添加代码创建和初始化工具条,并建立所需的连接关系,代码如下:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{ ……
// 创建和初始化工具条对象
m_pMyToolBar=new CToolBar();
m_pMyToolBar-〉Create(this, WS_CHILD|WS_VISIBLE|CBRS_TOP, 0x9100);
// 将按钮图象和工具条对象连接起来
m_pMyToolBar-〉LoadBitmap(IDR_MYTOOLBAR);
// 将映射数组My_Buttons和工具条对象连接起来
m_pMyToolBar-〉SetButtons(My_Buttons, sizeof(My_Buttons)/sizeof(UINT));
// 允许用户通过鼠标将工具条移动到框架的其它地方
m_pMyToolBar-〉EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(m_pMyToolBar);
return 0; }
6. 通过View-〉ClassWizard为工具条的按钮ID值添加消息响应处理函数,例如为ID_TOOLBAR_CIRCLE添加的处理函数如下所示:
void CMainFrame::OnToolbarCircle()
{ AfxMessageBox(Circle); // 可改为具体的有关代码}
这样,我们就创建了一个新的工具条(如图1),上面有两个按钮,点击按钮将会执行有关的操作,并且用户还可以将工具条任意拖动到框架的其它地方。
工具条建立之后,就被连接到应用程序的框架窗口上,我们一般还要允许用户根据需要显示或隐藏该工具条。下面的代码就可实现这种要求:
int nShow=SW_SHOWNORMAL; // 想要隐藏则设置为SW_HIDE
m_pMyToolBar-〉ShowWindow(nShow); // 显示或隐藏工具条
RecalcLayout(); // 通知框架窗口, 重新计算工具条的位置
以上的程序在Visual C++ 6.0中调试通过。
原创力文档


文档评论(0)