以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  窗口中的文本框  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=141382)

--  作者:rayfux3322
--  发布时间:2019/9/28 0:35:00
--  窗口中的文本框
请教一下老师, 我把表里的某一单元格的值赋给窗口中的文本框,文本框里显示出来的怎么是没有换行和空格的呢,我复制进单元格里的是有换行和空格的
谢谢

用msgbox来看这个单元格中的内容又是有换行等格式的。谢谢。
[此贴子已经被作者于2019/9/28 0:41:14编辑过]

--  作者:有点蓝
--  发布时间:2019/9/28 9:27:00
--  
把文本框将“多行文本”属性设为True


--  作者:rayfux3322
--  发布时间:2019/9/28 11:22:00
--  
多行文本原来已经是true了的,所以不知道是什么原因
还有我这个值是从pop邮件里读回来的bodytext的内容。这个bodytext里的内容不管是放在webbrownser 还是文本框里都是没有格式的,就是没有换行,空格等。
需要怎样才能恢复呢, 我用msgbox来看这个值又是有换行等的。
[此贴子已经被作者于2019/9/28 11:26:48编辑过]

--  作者:有点蓝
--  发布时间:2019/9/28 11:40:00
--  
完整代码,和msgbox的结果发上来看看
--  作者:rayfux3322
--  发布时间:2019/9/28 13:46:00
--  
If e.Table.current Is Nothing Then \'这一句是为了防止表被筛选后是空表,造成current是空值而产生错误,重要!!
   Return
Else If  e.Table.current("rkey") = 0  Then  \'这一句是为了防止表被筛选后是空表,造成current是空值而产生错误,重要!!
   Return
Else
    If e.Table.Cols("收信内容").Visible = True Then  \'这段是赋值给显示容器.

        Dim tb1 As WinForm.Table = e.Form.Controls("Table1")        
        Dim wb1 As WinForm.WebBrowser = e.Form.Controls("WebBrowser1")
        Dim web = e.form.controls("Webbrowser1").basecontrol
        web.DocumentText = tb1.Table.current("收信内容")        
        Dim tb2 As WinForm.TextBox = e.Form.Controls("TextBox2")
        tb2.value= tb1.Table.current("收信内容")
        Dim pp As String = tb1.Table.current("收信内容")
         msgbox(pp)

        If e.Table.current("html类")= "文本" Then \'这一段是为了按是文本内容还是HTMl内容来选显示容器.
           tb2.Visible=True
           wb1.Visible=False
        Else
           tb2.Visible=False
           wb1.Visible=True
        End If

        tb1.Table.current("已读")= True \'这句是点了行后就标记已读.

        With tb1.Table                        \'这段是赋值给邮件头,看是按收信,还是发信还定
            Dim str As String = ""
            str &= "<font size= " & "2" & " > 收件人: " & .current("收发信箱号") & "</font>"
            str &= "<br><font size= " & "2" & " > 发送人: " &  .current("收信发送地址") & "</font> "
            str &= "<br><font size= " & "2" & " > 主题: " & .current("收信主题") & "</font>"
            str &= "<br><font size= " & "2" & " > 日期: " & .current("收信日期") & "</font>"
            str &= "<br><font size= " & "2" & " > 附件数: " & .current("收信附件数") & "</font></br>"
           
            Dim web2 = e.form.controls("Webbrowser2").basecontrol \'把收到的内容放到浏览器上,
            web2.DocumentText = str
        End With
        
    Else
        
        Dim tb1 As WinForm.Table = e.Form.Controls("Table1")
        Dim web = e.form.controls("Webbrowser1").basecontrol
        web.DocumentText = tb1.Table.current("发信内容")
      \'  tb1.Table.current("已读")= True

        With tb1.Table
            Dim str As String = ""
            str &= "<font size= " & "2" & " > 发送人: " & .current("收发信箱号") & "</font>"
            str &= "<br><font size= " & "2" & " > 收信人地址: " &  .current("发信邮箱") & "</font> "
            str &= "<br><font size= " & "2" & " > 主题: " & .current("发信主题") & "</font>"
            str &= "<br><font size= " & "2" & " > 日期: " & .current("发信发送时间") & "</font></br>"
                       
            Dim web2 = e.form.controls("Webbrowser2").basecontrol \'把收到的内容放到浏览器上,
            web2.DocumentText = str
        End With
     
End If     
End If




图片点击可在新窗口打开查看此主题相关图片如下:wbk.jpg
图片点击可在新窗口打开查看


图片点击可在新窗口打开查看此主题相关图片如下:msgbox.jpg
图片点击可在新窗口打开查看


--  作者:有点蓝
--  发布时间:2019/9/28 14:30:00
--  
试试
web.DocumentText = tb1.Table.current("发信内容").replace(vbcr,"").replace(vblf,"<br>")
--  作者:rayfux3322
--  发布时间:2019/9/28 16:20:00
--  
老师就是老师,问题解决,请问一下,这是为什么呢? 是TEXT的内容是AScII编码的吗?
--  作者:有点蓝
--  发布时间:2019/9/28 16:44:00
--  
html网页的内容是以<br />标签进行换行的。和普通文本的换行符不一样