|
疑问:干掉状态条之后,操作提示信息显示在哪? 答曰:自己造一个。 开工-------- ----------------------------------------------------------------------------- 把你的MainFrame里的 CStatusBar m_wndStatusBar 改为 CEdit m_wndStatusBar 然后,深入MainFrame::OnCreate函数------- 将类似下面的状态条创建语句 if (!m_wndStatusBar.Create(this,CBRS_TOPWS_CHILDWS_VISIBLE,AFX_IDW_STATUS_BAR ) !m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/sizeof(UINT))) { TRACE0("Failed to create status bar\n"); return -1; // fail to create } 改成 if (!m_wndStatusBar.Create(ES_READONLY CBS_AUTOHSCROLL WS_CHILD, CRect(0, 0, 200, 18),this,AFX_IDW_STATUS_BAR))//注意是IDW_STATUS_BAR { TRACE0("Failed to create CEditstatusBar\n"); return -1; // fail to create } 为了使其显示,我又做了一个 CReBar m_wndReBar, m_wndReBar.Create(this);之后 利用m_wndReBar.AddBar(&m_wndStatusBar); 把“状态条”显示在ReBar里,后面的我也没有进行修饰、、 如果你不创建ReBar将不能使CEditStatus显示... ---------------------------------------------------- 大功告成:)自制的简易状态条做成了,你还可以自己继承CEdit实现漂亮的状态条、还可以使用CComBox、CRichEditCtrl、CStatic等等,总之是依靠WM_SETTEXT显示文字的控件都可以。 道理?status是接收mainframe的WM_SETTEXT消息显示状态.我们模拟一个就OK!
(出处:http://down.vipcn.com/)
|