1.拖动的时候会有一个虚的比较粗的边框显示被拖动的对象。怎样让被拖动对象在进入可停靠区域之后显示比较细的实的边框,就像很多应用程序那样。
2.被拖动对象在停靠之后,会自动有一些效果,比如一个可以关闭窗口的小"x"和两条横线,怎样作可以不显示这些,就像一个工具条放在一个Panel上,而不是像CoolBar或ControlBar那样每个可移动的工具条都有竖的或横的短线区分。
3.什么时候一定要调用DockManager->ResetBounds()函数,好像CoolBar,ControlBar以及PageControl都会自动作一些处理。
4.我现在想在主Form的顶部和左边实现工具条的拖放和停靠,如果用CoolBar,当所有的工具条都移开之后,屏幕上还是会出现CoolBar的痕迹,只不过宽度很小,能不能消除。
请版主指点,谢谢。
--------------------next---------------------
我是这样做的。在窗口的最顶端放置一个Panel控件PanelDockSite,Align = alTop;DockSite = true;
另外放置两个Panel控件PanelTool1,PanelTool2,上面放置一些SpeedButton作为工具按钮;这两个Panel的 DragKind = dkDock;DragMode = dmAutomatic;
运行程序,拖动放置工具条的Panel,然后停靠PanelDockSite上。现在的问题是停靠之后,PanelTool1的边界上还是会有一个小"X"和两条线,小"X"可以关闭相应的Panel.
现在的问题是:1)怎样才能不出现那个小"X",就如同直接放在panel上。
2)当PanelDockSite上停靠多个PanelTool时,怎样控制PanelTool在PanelDockSite上的布局。
是不是要在PanelDockSite的几个事件响应函数OnGetSiteInfo,OnDockDrop,OnDockOver作处理,我在例程里还看到扑获CM_DOCKCLIENT消息的响应函数,这个消息在什么条件下必须扑获呢?
请版主赐教。
--------------------next---------------------
阅读(1301) | 评论(0) | 转发(0) |