以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 C/C++编程思想 』  (http://bbs.xml.org.cn/list.asp?boardid=61)
----  求教菜鸟问题一个  (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=40834)


--  作者:buxingfeng
--  发布时间:12/4/2006 1:39:00 PM

--  求教菜鸟问题一个
在C++树型节点中,代码如下:
void CMy123Dlg::OnRclickTree1(NMHDR* pNMHDR, LRESULT* pResult)
{
 // TODO: Add your control notification handler code here
 CMenu menu;
 HTREEITEM    hItem;
 VERIFY(menu.LoadMenu(IDR_MENU1));//装载自定义的右键菜单
 CMenu *pPopup=menu.GetSubMenu(0);//获取第一个弹出菜单,所以第一个菜单必须有子菜单
 ASSERT(pPopup !=NULL);
 POINT gpoint;//定义一个用于确定光标位置的位置
 GetCursorPos(&gpoint);//获取当前光标的位置,以便使得菜单可以跟随光标

 DWORD SelectionMade=pPopup->TrackPopupMenu(TPM_LEFTALIGN|TPM_RIGHTBUTTON |TPM_NONOTIFY|TPM_RETURNCMD,
 gpoint.x,gpoint.y,this);//在指定位置显示弹出菜单
 
 switch(SelectionMade)
 {
 case ID_MENUITEM_ADD:
 m_streeCTL.GetSelectedItem();
 m_streeCTL.InsertItem("",m_hInsertItem,m_hInsertItem);
 break;
  case ID_MENUITEM_DEL:
  m_streeCTL.GetSelectedItem();
  m_streeCTL.DeleteItem(m_hInsertItem);
  break;
 case ID_MENUITEM_Mod:
  
 }
 *pResult = 0;
}
请问:case下面的菜单功能该怎么实现?(添加,删除,修改功能)先在此谢过了。


--  作者:buxingfeng
--  发布时间:12/4/2006 3:20:00 PM

--  
没人也。。。哭。。。
--  作者:卷积内核
--  发布时间:12/4/2006 5:25:00 PM

--  
你上面的程序我没有验证,在你三个功能实现上,修改的实现应该是取得当前树节点上该项目的值,然后重命名该节点就可以实现了。
--  作者:buxingfeng
--  发布时间:12/4/2006 6:00:00 PM

--  
谢谢,不过可不可解释的稍微再详细点,偶是新手。呵呵。。。最好可以实现点击添加,跳出一个添加对话框,删除前有提示是否确定删除。   再次谢谢,网上找了好久了都没找到,只能向贵站求助了。
--  作者:卷积内核
--  发布时间:12/5/2006 8:48:00 AM

--  
添加实现:
做一对话框dialog,上面有文本输入框,点击添加按钮执行将输入文本赋值到添加节点。
删除实现:
点击自定义dialog上删除按钮执行删除节点操作。

将这些操作添到case语句中 DoModal( ); 即可。
没有完整可调试程序我也没法往里面添代码,OK?


W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
31.250ms