请问richtext数据窗口怎样才能带格式的导成word或excel啊?
在richtext里设置的字体或段落格式等导成word或excel时都没有了,怎么解决啊?谢谢 问题点数:100、回复次数:18Top
1 楼princelily(百合)回复于 2005-06-01 16:12:33 得分 20
使用richtext控件的SaveDocument()函数试试。
功能:将当前文档以超文本RTF 格式或ASCII 码格式保存到指定文件中.
语法:rtename.SaveDocument ( filename {, filetype } ).
参数:rtename RichText 编辑框名称.
filename String 类型指定要保存该控件内容的文件名.
filetype FileType 枚举类型指定数据的保存格式有效取值为
FileTypeRichText!—超文本格式RTF.
FileTypeText!—ASCII 码文件格式.
返回值:Integer 函数执行成功时返回1 发生错误时函数返回-1.
用法:
如果filename 参数指定的文件已经存在那么执行该函数时将触发RichText 编辑
框控件的FileExists 事件.
示例:
下面的代码可以放在某个命令按钮的Clicked 事件处理程序中当用户单击了该按钮后
将RichText 编辑框控件rte_1 的内容保存到文件中.
integer li_rtn
li_rtn = rte_1.SaveDocument("c:\test.rtf", FileTypeRichText!)
Top
2 楼salivapig(口水猪)回复于 2005-06-01 16:59:24 得分 0
你说的方法试过了,如果存word时用FileTypeText!类型的话,存好的word打不开。如果用FileTypeRichText!类型的话,存出来的word并不带格式Top
3 楼lzheng2001(1加1)回复于 2005-06-01 20:07:50 得分 40
我以前试过用写字板打开是可以的,你试试用写字板看行不?
按理说FileTypeRichText!保存应该可以打开的,楼主再检查一下程序有没有问题Top
4 楼princelily(百合)回复于 2005-06-02 07:20:14 得分 0
帮顶一下!Top
5 楼salivapig(口水猪)回复于 2005-06-02 14:25:35 得分 0
我试过了,用写字板打开也没有格式5555555555Top
6 楼lzheng2001(1加1)回复于 2005-06-03 13:03:40 得分 0
用windows自带的rich textbox control 吧
用ole control 插入
Microsoft rich textbox control (文件名 richtx32.ocx)
放在PB窗口后,在属性里可看到帮助文件! 这个控件比PB的好用
general 属性页中 点击ole control properties 可设置属性!Top
7 楼salivapig(口水猪)回复于 2005-06-03 15:09:53 得分 0
这个ole导出时可以带格式导出吗?我用的richtext的datawindow其它功能都好了,就是导出时不带字体的格式呀~~~~Top
8 楼lzheng2001(1加1)回复于 2005-06-03 18:38:44 得分 0
建议用richtext控件来做,不要用dw!Top
9 楼salivapig(口水猪)回复于 2005-06-04 10:33:34 得分 0
我也不想呀,这是前辈花了大量时间做好的东东,我只要加个导出,难道让我重做啊...Top
10 楼lzheng2001(1加1)回复于 2005-06-04 11:00:27 得分 0
你把你的语句贴出来!Top
11 楼aichangfeng(PowerBuilder/VB.NET)回复于 2005-06-04 12:08:39 得分 0
還是樓上說的,把代碼貼出來大家幫你試試Top
12 楼salivapig(口水猪)回复于 2005-07-01 10:34:21 得分 0
代码如下:
if GetFileSaveName("存为",ls_path,ls_filename,"","Excel格式,*.xls,Word格式,*.doc")=1 then
rte_1.savedocument(ls_path,FileTypeText!)
end if
存下来的word完全没有字体Top
13 楼lzheng2001(1加1)回复于 2005-07-01 10:50:14 得分 0
应该用这句才对呀!
rte_1.savedocument(ls_path,FileTypeRichText! )
Top
14 楼newsweetheart()回复于 2005-07-01 11:15:09 得分 20
不行,导出来全是乱码
Top
15 楼newsweetheart()回复于 2005-07-01 11:15:54 得分 0
:(Top
16 楼salivapig(口水猪)回复于 2005-07-01 14:40:55 得分 0
我试过了,用rte_1.savedocument(ls_path,FileTypeRichText! )导出来的全是乱码,用rte_1.savedocument(ls_path,FileTypeText! )导出来的没有字体,为什么啊?难道是我的word版本不高?Top
17 楼lzheng2001(1加1)回复于 2005-07-01 17:12:34 得分 0
你试试补丁吧!
或者用上面我说过的Microsoft rich textbox control (文件名 richtx32.ocx)控件,windows自带的.
这个好用
Top
18 楼youyouan(幽幽岸)回复于 2005-07-01 22:22:43 得分 20
如果你用的是DW中的RichText类型,在导出时数据格式不会随之改变,其实不必用DW,直接用控件,
然后利用SelectBlob将数据库中的数据取出放到RichText中就好了,导出时用非可视OLE到Word,而且
在PB中可用代码实现设置Word的字体,这样不是挺好吗。你可以将原来那人的此窗体抛弃,应该对别的模块没什么影响,但你要注意这一点Top




