不赞同使用OLE控件,速度慢、稳定性不好。
主要看做什么用途,针对不同的用途使用专门的控件代替就行了,最好不用OLE。

解决方案 »

  1.   

    这点分,花的值!!你解决了我的当务之急。
    你说ole控件慢,我也赶到很苦恼。我主要是控制别人使用word execl文件的修改过程。
    比如在我的系统内,有些人是可以对某个文档做修改的,而有些人只能看
    不能修改等等。
      不过我找到了关于word文档的控件。也是在vb里面是一个叫word文档控件。
    再次感谢你的帮助。
    这一百分就给你了。不过我要留几分,这样就不用重新开帖子了!!
      

  2.   

    怎么不可以给分呀。要不这样了!我现在不结帖也就不给分。我还有好多问题要请教你的。到时候在一起结清。
    怎么样!!??
    现在有一个问题,如何使用point属性读取object之外的屏幕颜色。
    还有就是point返回的是什么格式的数据。如何将它分解为R,G,B的格式分别存储在三个变量中。
      

  3.   

    使用Point读取屏幕之外的颜色我确实还不知道。只知道如果Point中x,y坐标所引用的点在object之外,则返回-1(表示错误)
    point返回的是Long。
    例如:
    Dim retColor as Long
    retColor=Point(10,10)
    Text1.BackColor=retColor如何将Point的值(Long)分解成RGB的三个参数(Integer),这里做了个函数,直接调用就可以了(经过测试的,放心使用)'函数说明:将RGB的值分解成red,green,blue
    'intRed     输入输出参数,红色
    'intGreen   输入输出参数,绿色
    'intBlue    输入输出参数,蓝色
    'lngRGB     输入参数,RGB的值
    '返回值为真表示成功,反之错误
    Private Function GetRGBMember(ByRef intRed As Integer, _
                            ByRef intGreen As Integer, _
                            ByRef intBlue As Integer, _
                            ByVal lngRGB As Long)
                            
        Dim strRGB As String
        
        On Error Resume Next
        
        strRGB = CStr(Hex(lngRGB))
        intRed = "&H" & (Mid(strRGB, 5, 2))
        intGreen = "&H" & (Mid(strRGB, 3, 2))
        intBlue = "&H" & (Mid(strRGB, 1, 2))
        
        If Err.Number = 0 Then
            GetRGBMember = True
        Else
            GetRGBMember = False
        End If
    End Function
      

  4.   

    调用该函数的例子Dim intRed as Integer
    Dim intGreen as Integer
    Dim intBlue as Integer
    Dim ret as Long ret=Point(10,10)
    if GetRGBMember(intRed,intGreen,intBlue,ret) Then
       Text1.BackColor=RGB(intRed,intGreen,intBlue)
    End If
      

  5.   

    不是屏幕之外的颜色,是object之外的屏幕颜色。比如其他应用程式
    的窗体的颜色。取得任务栏上的颜色等等。