制作一进度窗体。
要求窗体在最上层,下层的窗体不能被用户激活,直到进度窗体完成退出。
问题:我的控制进度语句在下层窗体如果用show 1 这种模式调出进度窗体则控制权转移到了进度窗体。而控制语句不能被运行。但是如果用show 进度窗体,,则会出现调出进度窗体时下层的窗体还可以被用户激活。。各位有何好办法

解决方案 »

  1.   

    在你的进度窗体中设置进度条的渐进值属性为窗体属性变量
    使用Property Let 语句设置这个渐进值
    Public Property Let PressValue(ByVal strPressValue As String)
        m_strPressValue = strPressValue 
    End Property
    在你的下层窗体中调用进度窗体的这个属性,而在进度窗体中根据得到的渐进值
    控制进度条,不知道是不是误解了你的意思
      

  2.   

    Form1.Enabled = False
    此时Form1不能激活,但它的语句还会运行,应该是此题的解
      

  3.   

    你的意思是不是两个窗体,想第二个一直都在第一个上边,第二个可以用,第一个可以看见,但是不能用。但是还不能让第二个在所有窗体之上,只是在第一个窗体上,就好象msgbxo弹出的对话框。
    我以前也碰到过,可惜我还是不会
      

  4.   

    : Maconel(Maconel说得是。。只不过msgbox 弹出的应该是个进度条。而且控制语句另可运行。。
      

  5.   

    hhjjhjhj(大头) 方法是可以实现但有些麻烦。。
    因为我并不想通过直接设置,因为我想做成与调用进度条窗体无关性的这种,也就是不知道form这个窗体的名字 。
      

  6.   

    把调用你的进度条窗体的这一句写成函数
    比如你的进度条窗体是form2,调用他的窗体是form1
    public function ShellForm2(byval frm as obj)
        form2.show
        frm.Enabled = False
    end function
    form1调用的时候
    ShellForm2 form1
    没试,不知道行不行