以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]富文本的使用 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=177492) |
-- 作者:chnfo -- 发布时间:2022/5/24 17:30:00 -- [求助]富文本的使用 我在窗口的afterload事件中增加了一个第三方控件富文本 Dim RTB As New System.Windows.Forms.RichTextBox RTB.Dock = System.Windows.Forms.DockStyle.Fill e.Form.Controls("Panel2").basecontrol.controls.add(RTB) 打开窗口以后,倒是可以做很多操作,比如输入文字、直接贴图了 问题:希望在富文本窗口中按回车(或者Ctrl+回车,可以自己设置)以后(为了方便测试,准备加一个保存按钮,来实现功能) 1、把富文本中的信息保存到数据库表A的Mess列中----这个应当怎么做? 2、如果能保存,也可以用其它的方法来把它发送给其他人(比如说在聊天窗口中发送) 我看到好多帮助,在设计上实际上是嵌入了一个网页浏览器实现的…… [此贴子已经被作者于2022/5/24 17:31:26编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/5/24 20:08:00 -- Dim RTB As New System.Windows.Forms.RichTextBox RTB.Dock = System.Windows.Forms.DockStyle.Fill RTB.name = "RichTextBox1" e.Form.Controls("Panel2").basecontrol.controls.add(RTB) 把富文本中的信息保存到数据库表A的Mess列中--- tables("表A").current("Mess") = e.Form.Controls("Panel2").basecontrol.controls("RichTextBox1").text
|
-- 作者:chnfo -- 发布时间:2022/5/24 20:57:00 -- 但是富文本窗口中,不仅仅只有文本信息啊,可能还有图片呢…… .text只能取到文本信息呢
|
-- 作者:有点蓝 -- 发布时间:2022/5/24 21:19:00 -- tables("表A").current("Mess") = e.Form.Controls("Panel2").basecontrol.controls("RichTextBox1").rtf |
-- 作者:chnfo -- 发布时间:2022/5/24 22:20:00 -- 倒是取到信息了。 缺点就是:图片信息转二进制文本,太大了,就是一个普通的截屏,就是50K,存数据库不合适 现在截屏以后,可以把它存到硬盘里,然后数据库里只存文件的存放目录,然后在WebBrowser还原为图片? |
-- 作者:有点蓝 -- 发布时间:2022/5/24 22:32:00 -- RichTextBox没有办法和WebBrowser交互。如果想用WebBrowser,可以试试这个:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=175055&replyID=&skin=1 |
-- 作者:chnfo -- 发布时间:2022/5/24 22:38:00 -- 也就是说,如果自己做一个聊天窗口,发送消息窗口和历史消息窗口都用富文本的话,只能用二进制? 或者说发送消息窗口用富文本,历史消息用WebBrowser?
[此贴子已经被作者于2022/5/24 22:42:35编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/5/24 22:43:00 -- 是的。除非您有能力去解析富文本里的rtf格式。 |
-- 作者:chnfo -- 发布时间:2022/5/24 22:51:00 -- 发送消息窗口用富文本,历史消息用WebBrowser?这样整不了是吧 我下载了示例文件,初始化的代码是这样的 Try Registry.SetValue("HKEY_CURRENT_USER\\SOFTWARE\\Microsoft\\Internet Explorer\\Main\\FeatureControl\\FEATURE_BROWSER_EMULATION",System.Diagnostics.Process.GetCurrentProcess.ProcessName & ".exe",11001) Catch ex As Exception MessageBox.Show("狐表调用IE11内核失败,会导致富文本框无法粘贴图片" & vbcrlf & "Error:" & ex.Message ) End Try Dim wb = e.Form.Controls("WebBrowser1").BaseControl wb.Url = New System.Uri(ProjectPath & "KindEditor\\e.html", System.UriKind.Absolute) 我只是要这个文本编辑器,不想用那些工具栏之类的,要怎么整? Dim ke As new KindEditor \'必须创建一个新实例 wb.ObjectForScripting =ke e.Form.Controls("GroupBox2").Enabled =True [此贴子已经被作者于2022/5/24 22:56:06编辑过]
|
-- 作者:有点蓝 -- 发布时间:2022/5/24 23:06:00 -- 这您要自己去看KindEditor的官方文档:http://kindeditor.net/doc3.php?cmd=api |