内网聊天工具FreeChat 2.0
FreeChat2.0 项目下载: /Files/BearOcean/FreeChat2.0.rar
在1.0的基础上更改了架构,现在几乎是完全不同的架构.
将多个功能模块也分开来写。并且为网络传输的数据加上了压缩的功能。
数据传到Server 再由相应的模块进行解压缩和解析。
涉及到了类包括:
FreeChatBaseForm
FreeChatListener
FreeChatMainForm
FreeChatMemberList
FreeChatMessage
FreeChatSender
关于这些类的详细解释可以在:http://bearocean.cnblogs.com/archive/2006/01/26/323628.html 中查找。
但是仍然有几个问题有待解决:
(1) 暂时无法进行文件传输,因为我想设计成,用户可以将任何文件拖动到消息输入框,点击发送按钮,将在目标端弹出提示框,让用户选择存放路径,这个要涉及RichTextBox的拖放消息,但是无论是哪个消息,都无法获得拖放文件的路径,也就没有办法取得文件的字节流。
(2) 试了很多方法,也不能让FreeChat在收到消息后ScorllBar自动滚动到底端。这个个人认为是和RichTextBox的Focus焦点获取有关。
奇怪的是TextBox使用AppendText 而不用其他的附加代码就可以自动滚底。
可以在开头位置下载项目文档和可执行程序。
相关随笔:
FreeChat(Beta) : http://bearocean.cnblogs.com/archive/2006/01/18/319310.html
FreeChat(1.0) : http://bearocean.cnblogs.com/archive/2006/01/19/320510.html
FreeChat (2.0)架构: http://bearocean.cnblogs.com/archive/2006/01/26/323628.html
这个程序会继续写下去。作为练习。