如何实现窗体在屏幕的中心从无到有从小到大的出现
编号:QA003532
建立日期: 2000年11月13日 最后修改日期:2000年11月13日
所属类别:
dave:
操作系统:windows 98 第二版
编程工具:vb 6.0
问题:本人想做一个动态的form,在屏幕的中心从无到有从小到大的出现,效果就如同网络蚂蚁的显示下载信息的消息框一样。我通过不断调整form的top,left,width,height四个属性,每调整一次就重新显示并隐藏一次form,但这样生成的form闪烁的非常严重,即使把form的autoredraw属性设为false也没有用.而且只要重设这四个属性中的任何一个,还没有执行下面的其它属性设定和form.refresh(或form.show)指令,form就自动重绘,导致form 的闪烁和偏离屏幕中心.不知该如何解决,请各位高手不吝赐教。Thanks!
水平: 中级
回答:
zhuzq的意见:
经试验,使用先隐藏后显示的方法的确有很严重的闪烁感,可以不使用它。下面的代码是经过测试的,Form1使用缺省属性。
Sub main()
Dim i, j
Const CX = 7700
Const CY = 5500
With Form1
.Show
For i = 0 To 10
Form1.Left = 7700 - i * 700
Form1.Top = 5500 - i * 500
Form1.Height = i * 1000
Form1.Width = i * 1400
Form1.Refresh
Next i
End With
End Sub
wngwnt的意见:
不要单独设置Left、Height、Top、Width,可以使用Move方法,如:
me.move me.left-10,me.top-10,me.width+20,me.height+20
此问题由李海回答。
| |
|
|
| |
|
|