您的位置:程序门 -> vb -> 控件



一个很简单的窗体隐藏和显示问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


一个很简单的窗体隐藏和显示问题[已结贴,结贴人:goodluck8749]
发表于:2007-11-17 16:42:34 楼主
程序只有一个主窗体form
现在我主窗体的visible设为true,当执行程序的时候,窗体正常显示了出来,这时,我点击最小化按钮,希望窗体隐藏,并且过一段时间,窗体再显示出来,我自己定义了一个delay函数,form_resize代码如下
private   sub   form_resize()
    if   me.windowstate   =   vbminimized   then
        me.hide                   //让窗体隐藏
        delay(2000)           //等待2秒
        me.show                   //让窗体再显示出来
    end   if
end   sub

现在问题是,我点击了最小化按钮之后,窗体确实也隐藏了,但是等待了2秒之后,却不能正常显示出来.delay函数如下:
public   sub   delay(msec   as   long)
on   error   goto   showerr
dim   tstart   as   single
tstart   =   timer
while   (timer   -   tstart)   <   (msec   /   1000)
doevents
wend
exit   sub
showerr:
msgbox   err.source   &   "------"   &   err.description
exit   sub
end   sub

到底问题出在哪里啊?
另外,我点击关闭窗体按钮,也希望是同样的效果,是在   form_unload函数中写吗?

我是新手,请大家帮帮忙
发表于:2007-11-17 16:53:271楼 得分:100
修改后
private   sub   form_resize()
        if   me.windowstate   =   vbminimized   then
                me.hide                                       '让窗体隐藏
                delay   (2000)                     '等待2秒
                me.windowstate   =   vbnormal       '其实只加了这行
                me.show                                       '让窗体再显示出来
        end   if
end   sub
如果想要关闭时候也是同样效果,加入
private   sub   form_unload(cancel   as   integer)
       
        me.hide                                       '让窗体隐藏
        delay   (2000)                     '等待2秒
        me.windowstate   =   vbnormal
        me.show                                       '让窗体再显示出来
       
        cancel   =   true
end   sub
这里面有些重复代码,你自己规整一下吧,问题是解决了


快速检索

最新资讯
热门点击