因此我正在开发一个非常基本的聊天类型项目,该项目从服务器读取文本文件,然后在用户输入并将其消息文本发送到服务器文本文件时更新文本文件。我的特殊问题是ScrollToCaret按照代码工作,但我无法弄清楚如何获得所需的结果。
以下是我的计时器代码片段,它每秒更新一次chatlog.text。
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
ChatLog.Text = (Encoding.ASCII.GetString(client.DownloadData("http://www.themodshop.co/chatbox/chatlog.txt")))
client.Dispose()
ChatLog.Select(ChatLog.Text.Length, 0)
ChatLog.ScrollToCaret()
If ChatLog.Text.Contains(Encoding.ASCII.GetString(client.DownloadData("http://www.themodshop.co/chatbox/commands/clear.txt"))) Then
Dim wb As New WebBrowser
wb.Navigate("http://www.themodshop.co/chatbox/clear.php")
System.Threading.Thread.Sleep(1500)
Dim request As WebRequest = WebRequest.Create("http://www.themodshop.co/chatbox/post.php?w=" + nickname.TextBox1.Text + " has cleared the chat")
request.GetResponse()
End If
End Sub
我也试过而不是ChatLog.Text =,ChatLog.Clear然后ChatLog.AppendText再次没有产生预期的结果,我理解为什么在那个。
以下是使用文本属性
处理上述计时器代码片段的图像
此处文字清除然后附加文字
我希望做的是让这项工作顺利进行,而不会在RichTextBox中不断跳过和弹跳。
感谢各位大家的时间和阅读本文,我非常感谢您对此事的任何帮助。
P.S。我也明白这远不是创建一个" Chatbox"的最佳方法。但是我想尝试将一些非常简单易用的东西放在一起。
谢谢!