用户名: 密   码:
   飞诺网 加入收藏
飞诺网 软件编程 C C++ Java VB Delphi Foxpro 汇编语言 游戏开发 移动开发 软件工程师 软工与管理 VC shell编程 C#
VC技术文档 VC系列教程

您当前的位置:飞诺网 >>  软件编程 >>  VC >> VC技术文档

VC++之对话框中添加工具栏

www.diybl.com    时间 : 2010-11-18  作者:佚名   编辑:fnw 点击:   [ 评论 ]

 

1、添加工具栏资源ID为IDR_TOOLBAR
2、在对话框的类定义中加:
 CToolBar m_ToolBar;
3、在OnInitDialog中或其它合适的消息响应中加如下代码:(函数可查看MSDN)
 

m_ToolBar.Create(this); //创建工具栏
 m_ToolBar.LoadToolBar(IDR_TOOLBAR);//加载工具栏
 
 //得出控件条大小.
 CRect rect;
 CRect rectNow;
 GetClientRect(rect);
 RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0,reposQuery,rectNow);

 //放置控件条位置
 CPoint ptOffset(rectNow.left-rect.left,rectNow.top-rect.top); 

 CRect  rcChild;
 CWnd* pwndChild=GetWindow(GW_CHILD);
 while (pwndChild)
 {                               
  pwndChild->GetWindowRect(rcChild);
  ScreenToClient(rcChild);
  rcChild.OffsetRect(ptOffset);
  pwndChild->MoveWindow(rcChild,FALSE);
  pwndChild=pwndChild->GetNextWindow();
 }

 //调整对话框尺寸
 CRect rcWindow;
 GetWindowRect(rcWindow);
 rcWindow.right+=rect.Width()-rectNow.Width();
 rcWindow.bottom+=rect.Height()-rectNow.Height();
 MoveWindow(rcWindow, FALSE);
 
 //控件条定位
 RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);
  
 //对框居中
 CenterWindow();

 

 

4、手工添加处理函数
 

afx_msg void OnBtnXXX();//消息响应函数声明
 ON_COMMAND(ID_BTN_XXX/*工具按钮ID*/,OnBtnXXX/*函数名*/)//消息映射
         void CXXXDlg::OnBtnXXX(){}//消息处理函数


如果图片或页面不能正常显示请点击这里
VC技术文档推荐文章

文章评论