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

 

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(){}//消息处理函数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值