ChatClient类是主类,或者说是控制类
UserView类是界面类,里面有一个JTextArea控件
Receiver类是一个基于UDP的接受消息的线程类,其构造函数如下:
Receiver(UserView uPara){。。。。。。。},即构造了Receiver对UserView类的应用,以便把它收到的消息追加到UserView对象的JTextArea中。
现在的关键是,调试发现远程的消息已经接受到本地的message变量中,但是无法使其显示到JTextArea上。(我的方法是:在receiver线程中给UserView对象发一个消息,即调用UserView中的JTextArea中的append方法。第一次接收到的消息,可以正常的显示,但是第二次以后的消息,就不行了
)
小弟向各位请教了,谢谢
6 个解决方案
#1
第一次接收到的消息,可以正常的显示,但是第二次以后的消息,就不行了
1.确定消息是否通讯到了,如果没有,找原因
2.如果确实收到,输出下,组件是否REPAINT了
1.确定消息是否通讯到了,如果没有,找原因
2.如果确实收到,输出下,组件是否REPAINT了
#2
客户端与服务器端通信不一致,看看你的代码吧,
#3
$ zz╭ ╮╭ ﹌╮. $
$ z(o-.-o)(o-.-o) . $
$ ┏~﹊︸ ̄~﹊︸ ̄~┓ $
$ IT者-IT开发者的网站-- $
$ 10万篇技术资料--天天更新 $
$ -----www.itzhe.cn----- $
$ z(o-.-o)(o-.-o) . $
$ ┏~﹊︸ ̄~﹊︸ ̄~┓ $
$ IT者-IT开发者的网站-- $
$ 10万篇技术资料--天天更新 $
$ -----www.itzhe.cn----- $
#4
有偿转让Java即时通信工具源程序及设计文档
可以学习到专业级的多线程、Socket、Swing图形等Java技术。
其中包括设计文档,更适合学生用于毕业设计
有意者与SnowingXimen@163.com联系
程序在这里
http://tomore.com/1/38258.html
#5
谢谢各位,我已经找到了答案
关键是BuffededReader.readLine()函数的问题
关键是BuffededReader.readLine()函数的问题
#6
关键是BuffededReader.readLine()函数的问题
次函数会把Buffer中的所有数据读出到message中,如果没有“\n”作为边界的话
而你的TextArea如果没有滚动条的话,那么问题就出现了
次函数会把Buffer中的所有数据读出到message中,如果没有“\n”作为边界的话
而你的TextArea如果没有滚动条的话,那么问题就出现了
#1
第一次接收到的消息,可以正常的显示,但是第二次以后的消息,就不行了
1.确定消息是否通讯到了,如果没有,找原因
2.如果确实收到,输出下,组件是否REPAINT了
1.确定消息是否通讯到了,如果没有,找原因
2.如果确实收到,输出下,组件是否REPAINT了
#2
客户端与服务器端通信不一致,看看你的代码吧,
#3
$ zz╭ ╮╭ ﹌╮. $
$ z(o-.-o)(o-.-o) . $
$ ┏~﹊︸ ̄~﹊︸ ̄~┓ $
$ IT者-IT开发者的网站-- $
$ 10万篇技术资料--天天更新 $
$ -----www.itzhe.cn----- $
$ z(o-.-o)(o-.-o) . $
$ ┏~﹊︸ ̄~﹊︸ ̄~┓ $
$ IT者-IT开发者的网站-- $
$ 10万篇技术资料--天天更新 $
$ -----www.itzhe.cn----- $
#4
有偿转让Java即时通信工具源程序及设计文档
可以学习到专业级的多线程、Socket、Swing图形等Java技术。
其中包括设计文档,更适合学生用于毕业设计
有意者与SnowingXimen@163.com联系
程序在这里
http://tomore.com/1/38258.html
#5
谢谢各位,我已经找到了答案
关键是BuffededReader.readLine()函数的问题
关键是BuffededReader.readLine()函数的问题
#6
关键是BuffededReader.readLine()函数的问题
次函数会把Buffer中的所有数据读出到message中,如果没有“\n”作为边界的话
而你的TextArea如果没有滚动条的话,那么问题就出现了
次函数会把Buffer中的所有数据读出到message中,如果没有“\n”作为边界的话
而你的TextArea如果没有滚动条的话,那么问题就出现了