我在一个单文档视图中增加一个ccontrolbar
然后在ccontrolbar中增加一个树控件,
现在
我想给我的树控件增加右键响应,并且能够识别是在哪个树枝上点击的右键。
我想了很久,不知该如何处理程序大致如下:
class CMainFrame : public CFrameWnd
{
...
//CCoolBar为一个继承自ccontrolbar的类
CCoolBar m_wndMyBar1;
CTreeCtrl m_wndTree;
...
}int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
...
if (!m_wndMyBar1.Create(_T("System"),this,123)) { TRACE0("Failed to create mybar\n"); return -1; }
m_wndMyBar1.SetBarStyle(m_wndMyBar1.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC);
m_wndMyBar1.EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyBar1, AFX_IDW_DOCKBAR_LEFT);///停靠在左边if (!m_wndTree.Create(WS_CHILD|WS_VISIBLE|TVS_HASLINES|TVS_HASBUTTONS|TVS_LINESATROOT,
CRect(0, 0, 0, 0),
&m_wndMyBar1, 100))
{
TRACE0("Failed to create instant bar child\n");
return -1;
}
m_wndTree.ModifyStyleEx(0, WS_EX_CLIENTEDGE);HTREEITEM hti = m_wndTree.InsertItem(_T("sys"));
m_wndTree.InsertItem(_T("part1"), hti);
m_wndTree.InsertItem(_T("part2"), hti);
m_wndTree.InsertItem(_T("part3"), hti);
m_wndTree.InsertItem(_T("part4"), hti);
...
}现在的问题是我怎么确定右键的位置,并响应树控件的右键消息请大侠指点!!!!
然后在ccontrolbar中增加一个树控件,
现在
我想给我的树控件增加右键响应,并且能够识别是在哪个树枝上点击的右键。
我想了很久,不知该如何处理程序大致如下:
class CMainFrame : public CFrameWnd
{
...
//CCoolBar为一个继承自ccontrolbar的类
CCoolBar m_wndMyBar1;
CTreeCtrl m_wndTree;
...
}int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
...
if (!m_wndMyBar1.Create(_T("System"),this,123)) { TRACE0("Failed to create mybar\n"); return -1; }
m_wndMyBar1.SetBarStyle(m_wndMyBar1.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC);
m_wndMyBar1.EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndMyBar1, AFX_IDW_DOCKBAR_LEFT);///停靠在左边if (!m_wndTree.Create(WS_CHILD|WS_VISIBLE|TVS_HASLINES|TVS_HASBUTTONS|TVS_LINESATROOT,
CRect(0, 0, 0, 0),
&m_wndMyBar1, 100))
{
TRACE0("Failed to create instant bar child\n");
return -1;
}
m_wndTree.ModifyStyleEx(0, WS_EX_CLIENTEDGE);HTREEITEM hti = m_wndTree.InsertItem(_T("sys"));
m_wndTree.InsertItem(_T("part1"), hti);
m_wndTree.InsertItem(_T("part2"), hti);
m_wndTree.InsertItem(_T("part3"), hti);
m_wndTree.InsertItem(_T("part4"), hti);
...
}现在的问题是我怎么确定右键的位置,并响应树控件的右键消息请大侠指点!!!!
解决方案 »
- 如何将CListCtrl控件中的图片拖动到界面上呢?
- p2p端口
- 网页中怎么自动填充用户名密码并自动登陆?
- 请教对话框中的子窗口里有子窗口A和B,如何让A保持在B顶面?
- c++控件的问题?
- listctrol控件中,调用LVN_GETDISPINFO显示的问题
- 学习操作系统中,管程(monitor)是个什么东东?和信号量的区别是什么呢?
- 新手提问,对VC的消息传递机制还是不明白。
- DDraw中否已经包含了Alpha操作的能力?(30讨论题)
- 就剩这么点分了!各位大仙一定要help me ,我求求求你们了!!!!!!!
- 怎样将char a[10] 中的 前 5 各 付给 char b[5];
- 动态创建不规则的Static?
{ CTreeCtrl::OnRButtonDown(nFlags, point); UINT uFlags;
HTREEITEM hItem = HitTest(point, &uFlags);
int nItem = (int)hItem;
if ((hItem != NULL) && (TVHT_ONITEM & uFlags))
{
htItem = hItem;
GetParent()->SendMessage(TREE_RBUTTONDOWN, nItem, 0);
}
}派生,