本人最近在看有关VB6的一些资料,其中看到一个是将一个text中的值传至dataobject中,然后dataobject再将值传至剪贴板(clipboard)中,最后使用paste方法,将值传至另一个text中,具体程序如下所示:
Dim MyData As DataObjectPrivate Sub CommandButton1_Click()
    Set MyData = New DataObject
    
    MyData.SetText TextBox1.Text
    MyData.PutInClipboard    TextBox2.Paste
End Sub可是我在使用使用MyData这个DataObject时,却是无法使用其的PutInClipboard方法.是否是需要在"工程--引用"菜单中进行相关的引用的添加,才能使用DataObject,但是不知到底应该添加哪一个,所以特请各位帮忙,多谢!

解决方案 »

  1.   

    楼主可能是搞错了,你说的方法是可以用在VBA中,但在VB中是不行的。在VB中你可以使用Clipboard对来达到你的目的。如:
     SetText用于向剪贴板上写入数据,使用语法如下:
      object.SetText data, format
       '其中data是被放置到剪贴板中的字符串数据;
       'format是一个常数或数值,指定 Visual Basic 识别的剪贴板格式,有三种选择vbCFLink(&HBF00),DDE    '对话信息 ;vbCFRTF(&HBF01)RTF 格式; vbCFText(1)文本;如果不指定默认为文本。   GetText用于从剪贴板上读入数据,使用语法如下:
       object.GetText (format)
       '其中format的用法同上 
       '它的返回值就是剪贴板上的数据
      Clear用于清除剪贴板上的数据,使用语法如下:
       object.Clear 
       '一般情况下如果我们要使用系统剪贴板,总是先清除剪贴板上的数据,然后再写入 
      程序中当“复制”按钮按下时,我们把文本框Text1中的内容写入剪贴板,则在程序中加入如下语句:
       Clipboard.Clear
       Clipboard.SetText (Text1.Text)  程序中当“粘贴”按钮按下时,把剪贴板中的内容写入文本框Text2,则在程序中加入如下语句:
       temp = Clipboard.GetText(vbCFText)
       Text2.Text = temp  这样就完成了一个简单的文本复制、粘贴过程,利用剪贴板还能进行各种数据格式的操作。记住,VBA与VB是有些区别的。
      

  2.   

    Clipboard对vb而言是自动全局的,不用声明,直接实现调用Clipboard对象。