网络画板的开发也是基于通信基础。关于通信的体内容,在上一篇博客里面已经说过,这里不再多说。这里主要介绍一下该画板的实现过程。当然这三行代码还是核心内容。
ServerSocket server = new ServerSocket(12345); Socket client = server.accept(); Socket client = new Socket("localhost", 12345);
首先,是一个画板的实现,这个不是大问题。还有就是文件传输的问题,这也不是问题,这个在上一章已经得到解决。所以不在累述。
首先我们在创建服务器画板时打开服务器,当然为了方便于问题的解决,我们把客户端的地址也设置为默认的,在打开画板的一瞬间客户端同时连接服务器。为了更好的作画,我们选择了一个拉杆啊监听器来监听RGB三原色的值,这样有助于画出不同颜色的图形,首先是实例化三个拉杆,当然还有三个监听器,这是必然的,其次是对他们分别的加了三个监听器·。这三个监听器分别控制不同的拉杆,分别取得不同的值并设置颜色。
ChangeListener red = (new ChangeListener() { public void stateChanged(ChangeEvent e) { R = jsR.getValue(); g.setColor(new Color(R, G, B)); } }); jsR.addChangeListener(red);
还有就是定义了一个类,这是不同于前几次文件传输的一种尝试,这样有助于把一个类封装起来从而有利于属性值的调用此类统一为line类,其实用shape更合适。每次获取坐标值之后把它存到对象中,这样在客户端只要获取类中的数据就可以。
public void mouseReleased(MouseEvent e) { x2 = e.getX(); y2 = e.getY(); Line line = new Line(); String command = bg.getSelection().getActionCommand(); try { line.setX1(x1); line.setX2(x2); line.setY1(y1); line.setY2(y2); line.setCommand(command); line.setR(R); line.setG(G); line.setB(B);
其次,我定义了一个按钮组,这样在判断画什么图形的时候就可以可以直接勾选前面的那个而不用加按钮组,这极大地方便了画板的灵活性,能够更好的运用画板。
private ButtonGroup bg = new ButtonGroup();// 创建一个按钮组
怎么样,那就一起和我看一下吧,看看成果如何。
当然,还有好多地方需要不断的改进和完善。比如没有设置擦除工具等。。
相关推荐
NULL 博文链接:https://zhoujianquan.iteye.com/blog/1916445
基础篇18-基础篇综合习题 基础篇19-python语句与数据结构应用 基础篇20-python函数 基础篇21-文本操作应用 基础篇22-文本操作应用解答 老王Python教程 进阶篇 进阶篇1-进阶篇承上启下 进阶篇2-函数第一节 进阶篇3-...
中国联通通信网络运行维护规程--固定网络设备分册-IDC维护篇.doc
科技行业:5G如何突围,通信设备篇-20190605-中金公司-32页.pdf
"基础篇-14-基础配置.mp4"是理解Spring Boot配置文件的关键,讲解了application.properties或application.yml的使用,以及如何进行环境变量的配置。"基础篇-18-yaml数据格式.mp4"专门针对YAML数据格式进行了讲解,...
科技行业:5G如何突围,通信设备篇-0605-中金公司-32页.pdf
例如,网络抓包工具Wireshark可以让我们观察网络通信的细节,查看数据包的内容和流向,这对于理解和学习通信协议非常有帮助。另外,端口扫描工具Nmap能帮助我们检测网络服务的状态,理解网络的开放端口和通信模式。...
VBS基础篇-变量-变量的作用域.doc
《Java语言程序设计-基础篇》答案-第16章.pdf
本资源包“Java项目开发实践---网络篇”涵盖了Java进行网络通信的基础与实践,旨在帮助开发者深入理解并掌握相关知识。 1. **Java网络编程基础** Java提供了丰富的API来处理网络通信,主要集中在`java.net`包下。...
这部分为大数据linux基础操作如查看文件,怎么事实查看文件,怎么复制移动文件,能有效预防新手犯错。
java语言程序设计-基础篇--第八版--英文课件(第15章)
文章通过对网络数据通信中的隐蔽通道技术的介绍,进一步就网络通信中隐蔽通道存在的技术基础和实现原理进行了探讨,并对网络通信隐蔽通道技术进行了深入的研究与分析。 论文接着对隐蔽通道的概述进行了详细的介绍。...
MR-JET-G 用户手册 (通信功能篇) MR-JET 用户手册 (调整篇) MR-JET 用户手册 (故障排除篇) MR-JET-G 用户手册 (参数篇) MR-JET-G 用户手册 (对象字字典篇》 e-Manual是指可使用专用工具阅览的三菱电机FA电子书籍手册...
《FX5用户手册(MODBUS通信篇)》将深入介绍如何设置MODBUS通信参数和实现MODBUS报文的发送与接收。 再者,以太网通信是现代工业网络的核心,FX5U系列PLC通过内置的以太网接口提供高速、高容量的数据交换。它支持...
彩屏驱动开发技术资料基础篇TFT-51-6.zip
彩屏驱动开发技术资料基础篇TFT-51-4.zip
彩屏驱动开发技术资料基础篇TFT-51-1.zip
在本节"Dubbo视频教程--基础篇--第01节"中,我们将深入探讨如何使用Dubbo这一流行的Java微服务框架对传统的工程进行服务化改造。这个教程将为初学者提供一个清晰的思路,帮助他们理解如何有效地利用Dubbo来解耦应用...
MR-J5用户手册的通信功能篇主要介绍如何使用CC-Link IESNET实现与MR-J5伺服放大器的高效通信。以下是手册中的关键知识点: 1. 安全须知:用户在操作MR-J5伺服放大器前,需要严格遵守安全规范,包括在进行接线、设定...