急须高手指教:关于窗口自动调整大小的问题
我有一个窗口CSearchView其对象view。我想在这个窗口里动态的添加几个控件,如一个编辑框,一个树型控件,一个按钮。我在CSearchView的WM_Create 中把他们创建了,控件位置一旦固定,如果我的窗口大小发生改变,有些控件就有由位置原因而不能完全显示。我想实现一个CScrollBar,让窗口可以滚动,以便看到未显示控件。
请大家帮帮忙,小弟比较笨,最好有些代码。谢谢!
问题点数:100、回复次数:9Top
1 楼mahatma_cn(研究硕士生)回复于 2003-02-01 23:49:33 得分 20
CFormViewTop
2 楼ensionhower(阿斌)回复于 2003-02-02 11:53:32 得分 0
除了这个方法还没有别的没有吗?
能不能重载CSrollView呢?我不太会Top
3 楼smilingdeng(笑笑的邓冲)回复于 2003-02-02 12:08:32 得分 10
在窗口消息WM_SIZE中调整控件的的尺寸大小呀,Top
4 楼ensionhower(阿斌)回复于 2003-02-02 17:47:08 得分 0
能不能不调整窗口大小,而通过滚动条来完成啊?Top
5 楼papaya_stone(^_^)shentong(^_^)回复于 2003-02-02 18:35:27 得分 30
把你的CSearchView从CSrollView派生Top
6 楼naile()回复于 2003-02-09 17:11:36 得分 10
在OnSize函数中,根据传入的父窗口的cx,cy,对每个控间调用MoveWindow
比如:
void CSearchView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
m_List.MoveWindow( 0, 0, cx, cy/2 );
m_Combox.MoveWindow( 0, cy/2, cx, cy);
}
Top
7 楼ensionhower(阿斌)回复于 2003-02-10 10:28:51 得分 0
我主要的问题是这个样子的,我创建了一个分割视图CSplitterWnd,把视图分成了两部分,我想在左部分显示一个视图,在这个视图上有一些控件,但是如果分割视图移动大小的话,那里面的视图也要变化,我就想实现一个滚动条来控制,如果窗口大小变化到不及原来的大小时,就自动出现滚动条,然后通过滚动条脱拽实现视图的完整显示?
希望各位高手指教!!
Top
8 楼ensionhower(阿斌)回复于 2003-02-10 10:37:17 得分 0
upTop
9 楼zswzwy(酒是穿肠毒药 @ 色是刮骨钢刀)回复于 2003-02-10 12:23:53 得分 30
可以学习一下CScrollView是如何加入滚动条的,在你的类中加入一样的代码。
并设置滚动属性。Top




