📄 subject_62731.htm
字号:
<p>
序号:62731 发表者:樂日華 发表日期:2003-11-28 11:49:49
<br>主题:為什麼每個窗口的OnInitialUpdate()執行2次. 急急急急..... 老大
<br>内容:我參考了一個切分窗口的源代碼. outlook 風格. 可是我發現 這個程序裡面的三個<BR>窗口 的OnInitialUpdate () 都執行2次. 揣摩了1天也不知道為什麼. 那位老大幫忙看看.<BR>謝謝了. 代碼如下.
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:樂日華 回复日期:2003-11-28 11:51:13
<br>内容:我揣摩了1天. 不知道為什麼. 幫幫我,,,,,,,,,,,,誰做過這個. 鬱悶鬱悶.
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:樂日華 回复日期:2003-11-28 12:49:11
<br>内容:怎麼又,沒又人能給個答案了.???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:BigJames 回复日期:2003-11-28 13:06:08
<br>内容:那是两个View的实例,<BR>请注意看一下,设一个断电在OnInitialUpdate,就会发现this是不一样的。<BR><BR>int CSplitterView::OnCreate(LPCREATESTRUCT lpCreateStruct) <BR>{<BR> m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CListCtrlView), CSize(150,0), pContext);<BR> m_wndSplitter.CreateView(1,0,RUNTIME_CLASS(CEditCtrlView), CSize(0,0), pContext);<BR> <BR> return 0;<BR>}<BR><BR>BOOL CRightPaneFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) <BR>{<BR> // TODO: Add your specialized code here and/or call the base class<BR><BR> m_pSplitterView = new CSplitterView;<BR> m_pSplitterView->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, VIEW_SPLITTER, pContext);<BR> SetActiveView(m_pSplitterView);<BR> m_pSplitterView->ShowWindow(SW_SHOW);<BR> m_pSplitterView->SetDlgCtrlID(AFX_IDW_PANE_FIRST);<BR> m_nCurrentViewID = VIEW_SPLITTER;<BR><BR> m_pListCtrlView = new CListCtrlView;<BR> ((CView*) m_pListCtrlView)->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, VIEW_LISTCTRL, pContext);<BR> m_pListCtrlView->ShowWindow(SW_HIDE);<BR> m_pListCtrlView->SetDlgCtrlID(VIEW_LISTCTRL);<BR><BR> m_pEditCtrlView = new CEditCtrlView;<BR> ((CView*) m_pEditCtrlView)->Create(NULL, NULL, 0L, CFrameWnd::rectDefault, this, VIEW_EDIT, pContext);<BR> m_pEditCtrlView->ShowWindow(SW_HIDE);<BR> m_pEditCtrlView->SetDlgCtrlID(VIEW_EDIT);<BR><BR><BR>}<BR><BR>CRightPaneFrame里创建了3个view的实例,CSplitterView,CListCtrlView和CEditCtrlView。<BR>而在CSplitterView里用创建了CListCtrlView和CEditCtrlView的实例。<BR>由于CListCtrlView和CEditCtrlView分别创建了2个实例,自然会调用2次OnInitialUpdate了。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:樂日華 回复日期:2003-11-28 19:08:26
<br>内容:但是 那個顯示樹結構的 <BR>class CLeftPaneView : public CFormView 它也執行2次. 為什麼. 上面的 2個 我也今天下午找出來了. 把它修改了. 但是 CLeftPaneView 還不清楚. 謝謝你的關注.
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:BigJames 回复日期:2003-11-29 11:36:34
<br>内容:我的机器上只执行一次!
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:樂日華 回复日期:2003-11-29 12:08:28
<br>内容:hao
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -