RichTextBox复制,粘贴问题
我使用以下两条语句: Text()是RichTextBox
Clipboard.SetText Text1(QuinTB).SelText 'copy text to clipboard
Text1(QuinTB).SelText = Clipboard.GetText 'PASTE
可是当seltext是含有不同的selcolor,fontsize的时候,paste语句只能把seltext粘贴出来,其他字体和颜色的属性就没有表现出来了。为什么?
我要的是粘贴结果和原来的一样。有解决方法吗?
问题点数:60、回复次数:6Top
1 楼Jneu(沧海桑田)回复于 2001-12-10 19:22:19 得分 0
Clipboard.GetText vbCFRTFTop
2 楼Jneu(沧海桑田)回复于 2001-12-10 19:23:22 得分 0
Clipboard.SetText vbCFRTFTop
3 楼whose()回复于 2001-12-10 19:26:12 得分 60
所以如果想要将 RichTextBox 中被选取的内容复制到剪贴簿, 只要对 RichTextBox 送出 WM_COPY 信息即可, 以下是程序撰写上的细节:
1. API 函数的声明式:
Const WM_PASTE = &H302
Const WM_CUT = &H300
Const WM_COPY = &H301
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
注:如果以上的声明放在「一般模块」底下, 应在 Const 之前加上 Public 保留字, 并且将 Private 保留字去掉。
2. 调用例:
SendMessage RichTextBox1.hWnd, WM_COPY, 0, ByVal 0&Top
4 楼estrella(笨)回复于 2001-12-10 19:28:54 得分 0
Jneu(沧海桑田): 上面的语句是不是---
Text1(QuinTB).SelText =Clipboard.GetText vbCFRTF '?????
我直接执行
Clipboard.GetText vbCFRTF
可是连文本都没有粘贴上去.
请详细指教.Top
5 楼estrella(笨)回复于 2001-12-10 19:36:30 得分 0
whose: 请教如何结合SELTEXT的内容写具体的调用语句?Top
6 楼Arcan(Arcan)回复于 2001-12-10 22:40:52 得分 0
应该是这样吧:
Clipboard.SetText Text1(QuinTB).SelText vbCFRTF
我一般都用
Clipboard.SetText Text1(QuinTB).SelRTF
这样就可以把所有的格式都包括了
Top




