工具栏添加控件

以EditBox为例,步骤如下:

  • 新建一单文档项目
  • 在资源编辑器中,添加一工具栏按钮(ID_EDIT),为控件显示位置
  • 从CToolBar派生新类CmyToolBar,并添加public变量:CEdit m_wndEdit
  • 将MainFrm中的CToolBar替换为CmyToolBar
  • 在CMainFrm的OnCreate函数中,添加下面的代码:
     1     int nIndex = 0;
    2 RECT rc;
    3 while(m_wndToolBar.GetItemID(nIndex) != ID_EDIT)
    4 nIndex++;
    5 m_wndToolBar.SetButtonInfo(nIndex, ID_EDIT, TBBS_SEPARATOR, 80);//控件宽度为80
    6 m_wndToolBar.GetItemRect(nIndex, &rc);
    7
    8 if(!m_wndToolBar.m_wndEdit.Create(WS_CHILD|WS_VISIBLE|ES_MULTILINE, rc,//创建【多行】EditBox
    9 &m_wndToolBar, ID_EDIT))
    10 {
    11 TRACE0("Failed to create edit-box\n");
    12 return FALSE;
    13 }
    14
    15 m_wndToolBar.m_wndEdit.GetRect(&rc);//垂直居中
    16 OffsetRect(&rc,0,5);
    17 m_wndToolBar.m_wndEdit.SetRect(&rc);
    18
    19 m_wndToolBar.m_wndEdit.SetWindowText(L"EditBox");
    20 m_wndToolBar.m_wndEdit.ShowWindow(SW_SHOW);
  • 手动添加消息响应
原文地址:https://www.cnblogs.com/dahai/p/2269200.html