如何复制鼠标选中的一段字符?

bramr 2005-10-03 09:04:40
请问,怎么复制鼠标选中的文本文件中的一段字符到textbox中?
...全文
431 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
youchenglong 2005-11-10
  • 打赏
  • 举报
回复
sendkeys chr(3)
DemUN = Clipboard.GetText
youchenglong 2005-11-10
  • 打赏
  • 举报
回复
sendkeys chr(3)
就可以了,给分
Nomad_K 2005-10-04
  • 打赏
  • 举报
回复
Ctrl+C!--->Ctrl+V
哈哈哈~~~
好想很难,可以试着分几步走:
1。将文件在程序中打开,用RichTextBox比较好一点!
2。在RichTextBox中做文章,我已经很久没玩VB了,不知道RichTextBox有没Selected属性!如果有的话就好办了,用time控件来传递!将RichTextBox中选种的内容放入粘添板中!在有粘添板放入Text中
zlt982001 2005-10-04
  • 打赏
  • 举报
回复
屏幕取词其实并不这么简单,需要用到很多技术,如 hook,上面的代码不叫屏幕取词,只是取文本框内容而已
引用一段话

0 判断鼠标是否在一个地方停留了一段时间
1 取得鼠标当前位置
2 以鼠标位置为中心生成一个矩形
3 挂上API钩子
4 让这个矩形产生重画消息
5 在钩子里等输出字符
6 计算鼠标在哪个单词上面,把这个单词保存下来
7 如果得到单词则摘掉API钩子,在一段时间后,无论是否得到单词都摘掉API钩子
8 用单词查词库,显示解释框。
很多步骤实现起来都有一些难度,所以在中国可以做一个完善的取词词典的人屈指可数。
其中0,1,2,7,8比较简单就不提了。
bramr 2005-10-04
  • 打赏
  • 举报
回复
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function WindowFromPoint Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long

Private Const WM_GETTEXT = &HD
Private Const WM_SETTEXT = &HC


Private Type POINTAPI
x As Long
y As Long
End Type


Private Sub Timer1_Timer()

Dim Shu As POINTAPI
Dim Str As String * 30000

GetCursorPos Shu
SendMessage WindowFromPoint(Shu.x, Shu.y), WM_GETTEXT, 29999, ByVal Str
Label1.Caption = Str

End Sub
这段代码可以得到窗体的名字和textbox里的字符,但是怎么才能实现得到选中的字符呢?请高手指点
学习Java中 2005-10-04
  • 打赏
  • 举报
回复
up
接分
bramr 2005-10-04
  • 打赏
  • 举报
回复
我使用这里的代码却不能实现
http://vbzx.net/ArticleView/vbzx_Article_View_561.asp
希望高手能帮忙
bramr 2005-10-04
  • 打赏
  • 举报
回复
不是只限制在一个文本中,比如直接从网页中获得
bramr 2005-10-04
  • 打赏
  • 举报
回复
我想实现的是鼠标取词功能,就象一些翻译软件那样。用鼠标左键使一段字符被选中,松开鼠标后得到所选中的字符。
northwolves 2005-10-04
  • 打赏
  • 举报
回复
' Suppose you want to copy some words txtfile "xx.txt"(you have opened it with notepad or wordpad and selected some words)
Private Sub Command1_Click()
AppActivate "xx.txt"
SendKeys "^{c}"

Text1.SetFocus
Text1.Text = ""
SendKeys "^{v}"
End Sub
ling3 2005-10-04
  • 打赏
  • 举报
回复
Private Sub Command1_Click()
Clipboard.Clear
If Text1.SelLength > 0 Then
Clipboard.SetText Text1.SelText
End If
是要这样的吗?
bramr 2005-10-03
  • 打赏
  • 举报
回复
没人回答,再加50分。

741

社区成员

发帖
与我相关
我的任务
社区描述
VB 版八卦、闲侃,联络感情地盘,禁广告帖、作业帖
社区管理员
  • 非技术类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧