您的位置:首页 > 其它

vc对话框中添加工具栏

2010-08-05 21:26 295 查看
(转http://www.programfan.com/blog/article.asp?id=27914

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

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  工具 command