获得句柄

dream_ice 2008-10-24 09:29:16
请教:
我将一个单文档视图分割成两个视图,右视图有TAB1、TAB2、TAB3
现在我想获得TAB2的句柄请问如何操作,谢谢
...全文
94 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dream_ice 2008-10-24
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 dirdirdir3 的回复:]
在mainframe里面保留左右视图的指针,在右视图里保留tab1.......之类的crtl类
直接调用.............
[/Quote]

能再说的详细点吗?
左右视图的指针我可以获得,但你说的保留TAB之类的的ctrl是什么意思啊
dream_ice 2008-10-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 shailen126 的回复:]
//获得活动子帧窗口
CMDIChildWnd* pChild=(CMDIChildWnd*)GetActiveFrame();
//或:CMDIChildWnd* pChild=MDIGetActive();
//获得活动子帧窗口的活动视图
CMyView* pView=(CMyView*)pChild->GetActiveView();
[/Quote]

我是单文档
shailen126 2008-10-24
  • 打赏
  • 举报
回复
//获得活动子帧窗口
CMDIChildWnd* pChild=(CMDIChildWnd*)GetActiveFrame();
//或:CMDIChildWnd* pChild=MDIGetActive();
//获得活动子帧窗口的活动视图
CMyView* pView=(CMyView*)pChild->GetActiveView();
dirdirdir3 2008-10-24
  • 打赏
  • 举报
回复
在mainframe里面保留左右视图的指针,在右视图里保留tab1.......之类的crtl类
直接调用.............
dream_ice 2008-10-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zqh886 的回复:]
CMainFrame* pwnd=(CMainFrame*)::AfxGetApp()->m_pMainWnd;//获得框架类指针
CMyView* pView=(CMyView*)pwnd->GetActiveView();//获得视图类指针(CMyView为右边视图类)
pView->m_tab.GetCurSel(); //调用TAB的控制变量m_tab
[/Quote]

我知道tab控件怎么做了?但我发现当初不好在视图里对此操作,我写的新类是直接继承的CWnd的
该怎么办啊?问题貌似越来越复杂了。
dream_ice 2008-10-24
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 zqh886 的回复:]
CMainFrame* pwnd=(CMainFrame*)::AfxGetApp()->m_pMainWnd;//获得框架类指针
CMyView* pView=(CMyView*)pwnd->GetActiveView();//获得视图类指针(CMyView为右边视图类)
pView->m_tab.GetCurSel(); //调用TAB的控制变量m_tab
[/Quote]

最终获得的是TAB1、2、3的哪个句柄呢?还是它们的句柄是一个?有点不明白?因为你说调用m_tab,而三个视都是由m_tab创建的啊


BOOL CRightUpView::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
m_tabWnd.Create(WS_VISIBLE|WS_CHILD, this,0x1245);
m_tabWnd.CreateView("TAB1", RUNTIME_CLASS(CView1), pContext);
m_tabWnd.CreateView("TAB2", RUNTIME_CLASS(CView2), pContext);
m_tabWnd.CreateView("TAB3", RUNTIME_CLASS(CView3), pContext);
return TRUE;
}

忘记说了左边是个视图,右边是继承的CFrameWnd的,因为要创建TAB,具体的创建是上面的代码,CView1、2、3是每个标签视里的类。
zqh886 2008-10-24
  • 打赏
  • 举报
回复
CMainFrame* pwnd=(CMainFrame*)::AfxGetApp()->m_pMainWnd;//获得框架类指针
CMyView* pView=(CMyView*)pwnd->GetActiveView();//获得视图类指针(CMyView为右边视图类)
pView->m_tab.GetCurSel(); //调用TAB的控制变量m_tab
yayafu 2008-10-24
  • 打赏
  • 举报
回复
TAB2是什么

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧