Public Function getdemension()
    Dim f As New Form1
    f.Show                    这里不会等待窗体关闭,要用有模式窗体
    Set f = Nothing
End Function
Private Sub clickme_Click()
    gstrdimension = Form1.DataGrid1.Columns(mintcolnum)
    Unload me
End Subgstrdimension这个变量是上个函数的,在这里用没效果,我觉得结构有问题,不能这样返回。

解决方案 »

  1.   

    jdsuchen(陈健) 
    何谓模式窗体?英文名是什么?在msdn中怎么查找?
    调用dll中的类模块,gstrdimension是模块中的全局变量,在窗体(form)中不能使用吗?如果结构有问题的话?应该怎么修改呢?
    我是新手,麻烦详细一点。谢谢。
      

  2.   

    在dll中的form里有一个datagrid,并有如下代码:Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)
        With Me.DataGrid1
            Form1.txtbox.Text = "您选择的是:" & .Columns(mintcolnum)
            gstrdimension = .Columns(mintcolnum)
            .Refresh
        End With
    End Sub此窗体(form)在exe工程中是可以正常运行的,同时点datagrid的任一行,form上的名为txtbox的textbox的值会相应改变。但是放到dll中之后就不会改变了。当然,相应的值也取不到,请问这是什么原因??
      

  3.   

    我觉得这个问题应该不难啊,有过dll编程经验的大侠都应该了解吧。被调用的dll中的界面打开之后,有没有什么特别的编程的要求。为什么以前可以运行的窗口现在有部分功能失效呢?我觉得应该是对象引用方面的问题吧。可是就是无法入手去改。哪位能帮个忙?
      

  4.   

    topikachu(皮皮)
    主程序编译的时候还是dll编译的什么??
    接口兼容性在哪里设置?谢谢。