先建立乙個基於dialog 的程式,我給他起了個名字叫:dlgmenu*******。
一、如何往基於dialog的程式新增選單
[1.1] 先新增選單(idr_menu1)資源,並加上需要的選單項。
[1.2] 編輯對話方塊資源idd_dlgmenu*******_dialog的屬性,在屬性對話方塊中選擇idr_menu1即可。
[1.3] 假如您不希望在對話方塊屬性中直接設定選單,而通過**在程式中動態生成可以採用如下方法:
[1.3.1]在cdlgmenu*******dlg類聲名中新增成員變數cmenu m_menu
再在cdlgmenu*******dlg::oninitdialog() 中新增如下**: //載入選單
m_menu.loadmenu(idr_menu1);
//設定當前選單
setmenu(&m_menu);
//當你不需要選單時可以用 setmenu(null);來取消當前選單
二、如何往基於dialog的程式新增工具欄
[2.1] 先新增工具欄(idr_*******1)資源,並畫好各個按鈕。
[2.2] 在cdlgmenu*******dlg類聲名中新增成員變數 c******* m_wnd*******;
[2.3] 在cdlgmenu*******dlg::oninitdialog() 中新增如下** //新增乙個平面工具條
if (!m_wnd*******.createex( this,tbstyle_flat , ws_child | ws_visible | cbrs_align_top | cbrs_gripper | cbrs_tooltips,
crect(4,4,0,0)) ||!m_wnd*******.load*******(idr_*******1) )
m_wnd*******.showwindow(sw_show);
repositionbars(afx_idw_controlbar_first, afx_idw_controlbar_last, 0);
三、為工具欄新增工具提示
[3.1] 在cdlgmenu*******dlg類定義中手工新增訊息對映函式的定義,如下黑體部分 //}afx_msg
declare_message_map()
[3.2] 在cdlgmenu*******dlg.cpp新增函式的實現** //工具欄提示
bool cdlgmenu*******dlg::ontooltiptext(uint, nmhdr* pnmhdr, lresult* presult)
if (nid != 0) //不為分隔符
else
#else
if (pnmhdr->code == ttn_needtexta)
else
#endif
*presult = 0;
// 使工具條提示視窗在最上面
::setwindowpos(pnmhdr->hwndfrom, hwnd_top, 0, 0, 0, 0,swp_noactivate|
swp_nosize|swp_nomove|swp_noownerzorder);
return true;
}return true;
}[3.3] 在cdlgmenu*******dlg.cpp中新增訊息對映,請看如下**中的黑體部分 begin_message_map(cdlgmenu*******dlg, cdialog)
//}afx_msg_map
end_message_map()
四、其它
為了使你的程式看起來更酷,還可以在cdlgmenu*******dlg::onpaint()中修改**實現dialog 填充顏色。
cpaintdc dc(this);
crect rect;
getclientrect(rect);
dc.fillsolidrect(rect, rgb(60,110,170));
五、新增狀態列
static uint indicators =
; void cthreaddemodlg::oninitdialog()
repositionbars(afx_idw_controlbar_first, afx_idw_controlbar_last, 0);
}void cthreaddemodlg::onbutton1()
}
給對話方塊新增選單 工具欄 狀態列
先建立乙個基於dialog 的程式,名字叫 dlgmenu 一 如何往基於dialog的程式新增選單 1.1 先新增選單 idr menu1 資源,並加上需要的選單項。1.2 編輯對話方塊資源idd dlgmenu dialog的屬性,在屬性對話方塊中選擇idr menu1即可。1.3 假如您不希望...
給對話方塊新增選單 工具欄 狀態列簡易方法
給對話方塊新增選單 工具欄 狀態列簡易方法 收藏 先建立乙個基於dialog 的程式,我給他起了個名字叫 dlgmenu 一 如何往基於dialog的程式新增選單 1.1 先新增選單 idr menu1 資源,並加上需要的選單項。1.2 編輯對話方塊資源idd dlgmenu dialog的屬性,在...
給對話方塊新增選單 工具欄 狀態列簡易方法
先建立乙個基於dialog的程式,我給他起了個名字叫 dlgmenu 一 如何往基於dialog的程式新增選單 1.1 先新增選單 idr menu1 資源,並加上需要的選單項。1.2 編輯對話方塊資源idd dlgmenu dialog的屬性,在屬性對話方塊中選擇idr menu1即可。1.3 假...