请各位老大帮忙。
我在dialog上建立了一个SpliterWnd窗口,SpliterWnd中分为左右两个view,两个View都用Formview来实现,但是总有一个分隔条可以RESIZE,如何禁止?
另外,两个Formview显示在SPliterWnd中都是凹的,如何定制其风格。
谢谢!
我在dialog上建立了一个SpliterWnd窗口,SpliterWnd中分为左右两个view,两个View都用Formview来实现,但是总有一个分隔条可以RESIZE,如何禁止?
另外,两个Formview显示在SPliterWnd中都是凹的,如何定制其风格。
谢谢!
解决方案 »
- 接收串口数据后保存到xml文档,之后再发送到另一台计算机,再把接收的数据插入数据库
- 一个简单的MFC对话框程序,我执行了一个线程,为什么就堵死了??
- 新的错误
- 为什么我用installshield10.0在win2000下编译的安装包不能在winXP下运行?
- 请问:如何设置CTreeCtrl的每行Item的高度?
- CListCtrl怎么才可以改变Scrollbar的颜色??
- 谁会做机械原理课设,重赏10000分(不够用人民币补偿)
- 怎样得到对话框的指针??
- MFC 操作word 生成柱状图、饼形图
- 为什么我生成的Excel是固定的10行7列,而Word可以任意调整
- 那裡可以下載Seagate Crystal Reports 8,demo也行
- 请问关于 互谱算法
http://www.codeproject.com/splitter/flatsplitter.asp
不过你说的这个问题是没法解决的,因为FORM并没有真的凹下去,看起来凹是由于CSplitterWnd边界造成的。除非你可以去掉这个边界。
至于WM_SIZE,如果你禁止了FORM的WM_SIZE消息,则CSplitterWnd也就不能改变大小了。如果你重载了CSplitterWnd的鼠标拖动消息处理函数,并且不做什么操作,也可以达到相同的效果。建议从CSplitterWnd派生一个类,重载相应消息处理函数。
Use ClassWizard to create a new class named CMySplitterWnd of class type "generic CWnd" and change the references to CWnd in the class declaration and BEGIN_MESSAGE_MAP macro to CSplitterWnd.
Using ClassWizard, create message handlers for WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK, and WM_MOUSEMOVE. Bypass the CSplitterWnd functionality in each of these overrides by calling the corresponding CWnd handlers. The following example illustrates the WM_LBUTTONDOWN handler:
void CMySplitterWnd::OnLButtonDown(UINT nFlags, Cpoint point)
{
CWnd::OnLButtonDown(nFlags, point);
}
Remove any menu items that generate a ID_WINDOW_SPLIT command (such as the "Split" item on the VIEWEX sample's "Window" menu). This prevents CView::OnSplitCmd() from being called.2 remove WS_EX_CLIENTEDGE style(this style is added by MFC by default)
Use ClassWizard to create a new class named CMySplitterWnd of class type "generic CWnd" and change the references to CWnd in the class declaration and BEGIN_MESSAGE_MAP macro to CSplitterWnd.
Using ClassWizard, create message handlers for WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK, and WM_MOUSEMOVE. Bypass the CSplitterWnd functionality in each of these overrides by calling the corresponding CWnd handlers. The following example illustrates the WM_LBUTTONDOWN handler:
void CMySplitterWnd::OnLButtonDown(UINT nFlags, Cpoint point)
{
CWnd::OnLButtonDown(nFlags, point);
}
Remove any menu items that generate a ID_WINDOW_SPLIT command (such as the "Split" item on the VIEWEX sample's "Window" menu). This prevents CView::OnSplitCmd() from being called.2 remove WS_EX_CLIENTEDGE style(this style is added by MFC by default)
Use ClassWizard to create a new class named CMySplitterWnd of class type "generic CWnd" and change the references to CWnd in the class declaration and BEGIN_MESSAGE_MAP macro to CSplitterWnd.
Using ClassWizard, create message handlers for WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK, and WM_MOUSEMOVE. Bypass the CSplitterWnd functionality in each of these overrides by calling the corresponding CWnd handlers. The following example illustrates the WM_LBUTTONDOWN handler:
void CMySplitterWnd::OnLButtonDown(UINT nFlags, Cpoint point)
{
CWnd::OnLButtonDown(nFlags, point);
}
Remove any menu items that generate a ID_WINDOW_SPLIT command (such as the "Split" item on the VIEWEX sample's "Window" menu). This prevents CView::OnSplitCmd() from being called.2 remove WS_EX_CLIENTEDGE style(this style is added by MFC by default)