1、聊天工具的开发主要用到的是java图形化编程和Socket通信技术,在前面的文章中已经介绍过了,详情可以参考下文。查看聊天记录历史我们采用从文件中读取的方法,首先我们需要定义BufferedWriter类用于写入到文件,需要在关闭窗口时关闭BufferedWriter,如下图所示。


2、然后我们在发送按钮的监听器代码中调用下图的send()方法,该方法主要实现将数据写入到BufferedWriter,在显示区域显示输入的内容,并清空发送区域的内容。接着我们在event方法中实现log按钮的监听动作,我们将发送数据时写入的文件读取到内存输出流,再将内存中的内容转换成字符串,在显示区显示。


3、下面我们启动程序,点击“记录”按钮查看结果,可以看到聊天历史记录显示在屏幕中了。

4、接着我们来实现清屏按钮的功能,这个非常简单,只需要给清屏按钮clear添加动作监听,并在监听代码中将显示区域的文本设置为空字符串即可。

1、聊天工具中的震动功能主要是通过不断改变坐标位置来实现的。当发送震动信息的时候,我们需要给对方接收端一个提示,但是又不能向发送正常聊天信息一样,因此我们设置当发送-1这个字节时为震动,此处包装了一个send()方法,如下图所示。

2、下面我们编写shake()方法用于服务端接收消息的时候产生震动效果。由下图可知,首先要先获取坐标位置,通过多次修改坐标位置达到震动效果,最后还需要把位置还原回去。

3、我们在数据接收端调用上面的shake()方法,震动后便不需要再进行后续的操作了,因此使用continue退出本次循环,进行下一次循环。

1、经过上述步骤我们已经开发完该聊天工具,那么还有一些可以优化的地方,例如当在发送区编辑完输入的文字后,我们可以不通过发送按钮将文字发送出去,而是使用键盘上的Enter键,此时需要做的便是设置键盘监听器,并在keyReleased方法中判断,当按下的是Enter键便调用send()方法发送数据,如下图所示。

2、将代码发布成jar文件便不需要在Eclipse开发工具中启动程序了,直接双击jar文件便可使用该聊天软件。我们先在项目中找到GUIChart.java这个文件,右键点击Export,选择Java下的JAR file,点击next即可。

3、在接下来的界面中,我们选择导出的位置,即导出后jar文件所在的目录,同时也设置了该jar文件的名字,然后点击next,如下图所示。

4、最后,我们在下图的页面中找到Main方法所在的文件,由于仅导出一个文件,因此选择GUIChart,点击Finish按钮,如下图所示。
