高手:Word 中这样的代码如何实现(无法通过录制宏得到)
Word 中支持内容移动的操作,就是选定一段内容后,通过鼠标可以将其拖动到另外的地方,同时按住 Ctrl 键盘话,保留原内容。
请问,这样的操作如果通过代码来实现,如何才能做到?本想通过录制宏来得到,但Word在录制宏却时不支持鼠标的操作。(为什么需要这样拖动的拷贝方式呢,因为这种方式不影响剪贴板。)
问题点数:0、回复次数:8Top
1 楼DawnPine(拂晓的松)回复于 2005-06-03 08:48:14 得分 0
这个不难实现
关键在于 1.程序如何识别哪些内容应该被选定 2.程序如何确定插入到哪里
确定之后就可以把这些内容读到内存变量里,然后再插入到指定的地方Top
2 楼xinliangyu(yxl)回复于 2005-06-03 10:23:13 得分 0
'将指定内容复制到当前光标位置,不使用剪贴板:
Selection.TypeText ActiveDocument.Paragraphs(3).Range.Text
Top
3 楼CuiCanBin(CuiCanBin)回复于 2005-06-03 14:28:39 得分 0
To xinliangyu(yxl) And DawnPine(拂晓的松)
xinliangyu(yxl):你的方法已经很接近了。但请注意,TypeText 只能插入文本,而我想要的是复制,即将源的完整内容复制过来,就像是鼠标拖动的效果一样,源还可能是图片呢。
DawnPine(拂晓的松):现在就这么假设吧。将 Paragraphs(3) 的内容拷贝到当前光标位置 Selection 处,该如何实现。注意,实现方法不得破坏剪贴板的内容。Top
4 楼xinliangyu(yxl)回复于 2005-06-03 18:05:33 得分 0
明天来给看看,现太忙Top
5 楼xinliangyu(yxl)回复于 2005-06-04 10:12:59 得分 0
“不得破坏剪贴板”的办法我找不到了,另待高手解答吧Top
6 楼DawnPine(拂晓的松)回复于 2005-06-06 10:27:31 得分 0
我也没招了
等高手来看看吧Top
7 楼DawnPine(拂晓的松)回复于 2005-06-07 07:47:00 得分 0
如果纯粹是文字还好
但文字、格式、域、图等等在一起
俺就搞不定了:(
为什么不能借用剪贴板呢?Top
8 楼CuiCanBin(CuiCanBin)回复于 2005-06-07 10:29:50 得分 0
不管源是什么格式,实现的效果就是要和 Word 的拖拉操作一样。
因为我这个操作是在后台运行的,客户可能正在使用其它程序、或许已经将什么重要东西拷贝进入了剪贴板,如果利用剪贴板,那不是把用户的数据破坏掉了吗。
不知道 Word 是如何做到拖拉拷贝的。Top




