| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7359 人关注过本帖
标题:Vb中的复制文本框里内容的问题
只看楼主 加入收藏
maoyingtao
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-12
收藏
 问题点数:0 回复次数:18 
Vb中的复制文本框里内容的问题
Private Sub cmdcopy_Click()
Textxs.SelStart = 0
Textxs.SelLength = Len(Textxs)
Clipboard.SetText Textxs.SelText
End Sub
我用这个代码可以全选但死也复制不起来文本框里的内容啊
为什么啊??
搜索更多相关主题的帖子: 文本 
2008-10-03 11:49
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
Private Declare Function SendMessage Lib "user32" Alias "SendMessageW" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Const WM_COPY As Long = &H301
Const EM_SETSEL = &HB1&

Private Sub Form_Click()
  SendMessage Text1.hWnd, EM_SETSEL, 0&, -1&    '选择要复制的文本内容,第三个参数是启始位置,第四个参数是结束位置;
  SendMessage Text1.hWnd, WM_COPY, 0&, 0&       '复制Text1中被选中的文本内容。
End Sub

[[it] 本帖最后由 Joforn 于 2008-10-3 13:01 编辑 [/it]]

VB QQ群:47715789
2008-10-03 12:22
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
收藏
得分:0 
。。。。。。。。。

[[it] 本帖最后由 我是菜鸟哦 于 2008-10-3 12:52 编辑 [/it]]

偶是菜鸟鸟偶惧WHO?!!!!
2008-10-03 12:25
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
[bo][un]我是菜鸟哦[/un] 在 2008-10-3 12:25 的发言:[/bo]

因为你点击COMMAND的时候TEXT已经失去焦点
可以这样
Private Sub Command1_Click()
Text1.SetFocus
Text1.SelStart = 0
Text1.SelLength = Len(Text1.Text)
Clipboard.SetText Text1.SelText
End Sub


何苦呢,直接就用Clipboard.SetText Text1.Text不就行了?

VB QQ群:47715789
2008-10-03 12:37
multiple1902
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:4881
专家分:671
注 册:2007-2-9
收藏
得分:0 
Clipboard.Clear
Clipboard.SetText Text1.Text
2008-10-03 12:39
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
要注意的是,Clipboard是VB的剪贴板对象并不是Windows的,而我在2#发的是针对Windows剪贴板操作的。

VB QQ群:47715789
2008-10-03 12:39
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
收藏
得分:0 
[bo][un]Joforn[/un] 在 2008-10-3 12:37 的发言:[/bo]



何苦呢,直接就用Clipboard.SetText Text1.Text不就行了?

那请问如果我想复制具体的部分呢?而且楼主的要求是要点击COMMAND后才产生这样的效果,我只是按楼主的要求来

[[it] 本帖最后由 我是菜鸟哦 于 2008-10-3 12:41 编辑 [/it]]

偶是菜鸟鸟偶惧WHO?!!!!
2008-10-03 12:39
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
[bo][un]我是菜鸟哦[/un] 在 2008-10-3 12:39 的发言:[/bo]


那请问如果我想复制具体的部分呢?而且楼主的要求是要点击COMMAND后才产生这样的效果,我只是按楼主的要求来


其实和焦点无关,你自己试试就知道了。
至于楼主说的复制不到内容,应该是他想复制后,在其它的外部程序中粘贴,但是因为Clipboard只是修改了VB的剪贴板内容,并没有影响Windows剪贴板的内容,所以楼才会以为复制代码没有效果。

VB QQ群:47715789
2008-10-03 12:49
我是菜鸟哦
Rank: 6Rank: 6
等 级:贵宾
威 望:22
帖 子:921
专家分:209
注 册:2007-5-4
收藏
得分:0 
试过了,多谢指教,我以前遇到这种问题添加焦点就OK了,看来是我理解错了

偶是菜鸟鸟偶惧WHO?!!!!
2008-10-03 12:51
maoyingtao
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-12
收藏
得分:0 
那怎么复制到WINDOWS的剪切板中?
2008-10-03 13:24
快速回复:Vb中的复制文本框里内容的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028367 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved