Java Swing鼠标绘图程序

Java 写的画图程序挺适合用来练手的,是你想搞清楚图形界面是怎么一回事的时候。用的是 Swing 那套东西,JFrame、JPanel 这些常客肯定少不了。功能也比较完整,支持用鼠标画图,还能选颜色、切换形状。代码结构还蛮清晰的,事件逻辑和界面布局分得挺干净。

用 Swing 写 GUI 界面还是比较顺的,JFrame当窗口、JPanel当画布,JButton控制画图行为,容易扩展。比如你可以加个“清除”按钮或者搞个橡皮功能都不难。

绘图这块用的是Graphics2D,支持画矩形、圆形、线什么的,颜色也能改。你用g.setColor(Color.red)这样就能换成红色画笔,简单直接。想画复杂点的?translate()rotate()这些方法都可以玩一玩。

鼠标绘图也是亮点之一,靠监听MouseListenerMouseMotionListener实现的,鼠标点哪里画哪里,响应也快。像你按住左键拖动的时候画图,放开就结束,这逻辑在mouseDragged()里挺方便。

程序结构上走的是MVC路子,逻辑分得比较清楚。如果你想往里加点高级玩法,比如保存画布图像或者撤销操作,也不会太难接进去。

建议你先把整个项目跑起来看看,多点点按钮,画几笔,就知道每块代码在干嘛了。如果你平时也在搞 Swing 相关的开发,这份源码还挺值得收藏的。

rar
.rar 预估大小:23个文件
folder
画图 文件夹
file
MyRectangle.class 999B
file
DrawFrame.class 3KB
file
.project 380B
file
MainTest.java 326B
file
MyLine.class 841B
file
MyBoundedShape.class 971B
folder
.settings 文件夹
file
org.eclipse.jdt.ui.prefs 99B
file
org.eclipse.jdt.core.prefs 629B
file
DrawPanel.java 3KB
file
MyRectangle.java 573B
file
MyBoundedShape.java 595B
file
MyOval.java 558B
file
DrawFrame$ButtonHandler.class 1KB
file
DrawPanel$mouseHandler.class 2KB
file
MyLine.java 403B
file
.classpath 226B
file
MainTest.class 565B
file
MyOval.class 984B
file
MyShape.java 1004B
file
DrawFrame.java 3KB
file
DrawPanel.class 2KB
file
MyShape.class 1KB
file
DrawFrame$ItemHandler.class 1KB
rar 文件大小:14.84KB