回 帖 发 新 帖 刷新版面

主题:[讨论]一个和表单滚动条有关的问题

表单中的任意一个控件在表单的显示区外时,表单出现滚动条当拉动滚动条时也出现本来在表单中看不到的控件,现在反过来能不能在表单区外的控件获得焦点时而让滚动条发生滚动呢?什么代码能实现让表单滚动条滚动从而能看到表单区外的控件呢?(不移动控件在表单位中的位置)

回复列表 (共3个回复)

沙发

在表单视口外控件 GotFocus 的方法中写入:

高度方向自动移动表单的视口位置:
ntop=this.Top
with thisform
.SetViewPort(.ViewPortLeft,ntop-.Height/2)
endwith

板凳


在表单视口外控件 GotFocus 的方法中写入:

宽度方向自动移动表单的视口位置:

nleft=this.Left
with thisform
.SetViewPort(nleft-.Width/2,.ViewPortTop)
endwith

3 楼

[quote]在表单视口外控件 GotFocus 的方法中写入:

高度方向自动移动表单的视口位置:
ntop=this.Top
with thisform
.SetViewPort(.ViewPortLeft,ntop-.Height/2)
endwith[/quote]


可是这个太快了 一运行就跳到下面去了 上面的还没全部显示完呃
        有没办法设定个时间之类的

我来回复

您尚未登录,请登录后再回复。点此登录或注册