- 浏览: 476294 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
谢谢你的祝福:
特地登陆上来感谢一下楼主,解决问题。
ORA-04098: 触发器无效且未通过重新验证问题 -
fuqiangjava:
写的不错 解决了自己的一个问题 谢谢了
ORA-00001:unique constraint (oracle 10g) -
hujinhuhujinhu:
make ...我有1.6.23
MyEclipse6.5安装自动提示功能的jQuery插件步骤 -
fool2011:
学习下,博主
JFreeChart类生成折线图的Java源代码 -
814687491:
你不是说的JQUERY吗?
MyEclipse6.5安装自动提示功能的jQuery插件步骤
import java.applet.Applet; import java.awt.*; import java.awt.Point; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.ItemEvent; import java.awt.event.ItemListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.MouseMotionAdapter; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.awt.geom.Ellipse2D; import java.awt.geom.Line2D; import java.awt.geom.Rectangle2D; import java.awt.image.BufferedImage; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Properties; import java.util.Vector; import javax.imageio.ImageIO; import javax.swing.JColorChooser; import javax.swing.JFileChooser; import javax.swing.JOptionPane; import com.sun.image.codec.jpeg.JPEGCodec; import com.sun.image.codec.jpeg.JPEGEncodeParam; import com.sun.image.codec.jpeg.JPEGImageEncoder; public class DrawPencil extends Applet { private static final long serialVersionUID = 1L; Vector paintInfo = null;// 点信息向量组 int n = 1; MediaTracker mt; int x = -1, y = -1; int con = 1; int Econ = 5; int toolFlag = 0; Color c = new Color(0, 0, 0); BasicStroke size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); EveryPoint cutflag = new EveryPoint(-1, -1, c, 6, con); Panel toolPanel; Button eraser, drLine, drCircle, drRect; Button clear, pen; Choice ColChoice, SizeChoice, EraserChoice; Button colchooser; Label 颜色, 大小B, 大小E; Button openPic, savePic; FileDialog openPicture, savePicture; public DrawPencil() { super(); } public void init() { this.setSize(900, 600); paintInfo = new Vector(); ColChoice = new Choice(); ColChoice.add("black"); ColChoice.add("red"); ColChoice.add("blue"); ColChoice.add("green"); ColChoice.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { String name = ColChoice.getSelectedItem(); if (name == "black") { c = new Color(0, 0, 0); } else if (name == "red") { c = new Color(255, 0, 0); } else if (name == "green") { c = new Color(0, 255, 0); } else if (name == "blue") { c = new Color(0, 0, 255); } } }); SizeChoice = new Choice(); SizeChoice.add("1"); SizeChoice.add("3"); SizeChoice.add("5"); SizeChoice.add("7"); SizeChoice.add("9"); SizeChoice.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { String selected = SizeChoice.getSelectedItem(); if (selected == "1") { con = 1; size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); } else if (selected == "3") { con = 3; size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); } else if (selected == "5") { con = 5; size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); } else if (selected == "7") { con = 7; size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); } else if (selected == "9") { con = 9; size = new BasicStroke(con, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); } } }); EraserChoice = new Choice(); EraserChoice.add("5"); EraserChoice.add("9"); EraserChoice.add("13"); EraserChoice.add("17"); EraserChoice.addItemListener(new ItemListener() { public void itemStateChanged(ItemEvent e) { String Esize = EraserChoice.getSelectedItem(); if (Esize == "5") { Econ = 5 * 2; } else if (Esize == "9") { Econ = 9 * 2; } else if (Esize == "13") { Econ = 13 * 2; } else if (Esize == "17") { Econ = 17 * 3; } } }); toolPanel = new Panel(); clear = new Button("清除"); eraser = new Button("橡皮"); pen = new Button("画笔"); drLine = new Button("画直线"); drCircle = new Button("画圆形"); drRect = new Button("画矩形"); openPic = new Button("打开图画"); savePic = new Button("保存图画"); clear.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { toolFlag = 2; paintInfo.removeAllElements(); repaint(); } }); eraser.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // TODO 自动生成方法存根 toolFlag = 1; } }); pen.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // TODO 自动生成方法存根 toolFlag = 0; } }); drLine.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { toolFlag = 3; } }); drCircle.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { toolFlag = 4; } }); drRect.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { toolFlag = 5; } }); savePic.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { printPanelToJPG(toolPanel); } }); 颜色 = new Label("画笔颜色", Label.CENTER); 大小B = new Label("画笔大小", Label.CENTER); 大小E = new Label("橡皮大小", Label.CENTER); toolPanel.add(savePic); toolPanel.add(pen); toolPanel.add(drLine); toolPanel.add(颜色); toolPanel.add(ColChoice); toolPanel.add(大小B); toolPanel.add(SizeChoice); toolPanel.add(eraser); toolPanel.add(大小E); toolPanel.add(EraserChoice); toolPanel.add(clear); this.add(toolPanel); setBounds(60, 60, 900, 600); setVisible(true); validate(); this.addMouseMotionListener(new MouseMotionAdapter() { public void mouseDragged(MouseEvent e) { EveryPoint p1; switch (toolFlag) { case 0: x = (int) e.getX(); y = (int) e.getY(); p1 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p1); repaint(); break; case 1: x = (int) e.getX(); y = (int) e.getY(); p1 = new EveryPoint(x, y, null, toolFlag, Econ); paintInfo.addElement(p1); repaint(); break; default: } } }); this.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent e) { EveryPoint p2; switch (toolFlag) { case 3: x = (int) e.getX(); y = (int) e.getY(); p2 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p2); break; case 4: x = (int) e.getX(); y = (int) e.getY(); p2 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p2); break; case 5: x = (int) e.getX(); y = (int) e.getY(); p2 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p2); break; default: } } public void mouseReleased(MouseEvent e) { EveryPoint p3; switch (toolFlag) { case 0: paintInfo.addElement(cutflag); break; case 1: paintInfo.addElement(cutflag); break; case 3: x = (int) e.getX(); y = (int) e.getY(); p3 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p3); paintInfo.addElement(cutflag); repaint(); break; case 4: x = (int) e.getX(); y = (int) e.getY(); p3 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p3); paintInfo.addElement(cutflag); repaint(); break; case 5: x = (int) e.getX(); y = (int) e.getY(); p3 = new EveryPoint(x, y, c, toolFlag, con); paintInfo.addElement(p3); paintInfo.addElement(cutflag); repaint(); break; default: } } }); } public void paint(Graphics g) { Graphics2D g2d = (Graphics2D) g; EveryPoint p1, p2; n = paintInfo.size(); if (toolFlag == 2) g.clearRect(0, 0, getSize().width, getSize().height);// 清除 for (int i = 0; i < n - 1; i++) { p1 = (EveryPoint) paintInfo.elementAt(i); p2 = (EveryPoint) paintInfo.elementAt(i + 1); size = new BasicStroke(p1.boarder, BasicStroke.CAP_BUTT, BasicStroke.JOIN_BEVEL); g2d.setColor(p1.col); g2d.setStroke(size); if (p1.tool == p2.tool) { switch (p1.tool) { case 0: Line2D line1 = new Line2D.Double(p1.x, p1.y, p2.x, p2.y); g2d.draw(line1); break; case 1: g.clearRect(p1.x, p1.y, p1.boarder, p1.boarder); break; case 3: Line2D line2 = new Line2D.Double(p1.x, p1.y, p2.x, p2.y); g2d.draw(line2); break; case 4: Ellipse2D ellipse = new Ellipse2D.Double(p1.x, p1.y, Math .abs(p2.x - p1.x), Math.abs(p2.y - p1.y)); g2d.draw(ellipse); break; case 5: Rectangle2D rect = new Rectangle2D.Double(p1.x, p1.y, Math .abs(p2.x - p1.x), Math.abs(p2.y - p1.y)); g2d.draw(rect); break; case 6: i = i + 1; break; default: } } } } public void update(Graphics g) { paint(g); } public void printPanelToJPG(Panel graph) { int width = this.getWidth(); int height = this.getHeight(); BufferedImage bi = new BufferedImage(width, height, BufferedImage.TYPE_3BYTE_BGR); Graphics2D g2d = (Graphics2D) bi.createGraphics(); g2d = (Graphics2D) bi.getGraphics(); try { JFileChooser chooser = new JFileChooser(".//"); chooser.setAcceptAllFileFilterUsed(false); chooser.setSelectedFile(new File("1.jpg")); int status = chooser.showSaveDialog(graph); if (status == JFileChooser.APPROVE_OPTION) { File saveFile = chooser.getSelectedFile(); if (saveFile.exists()) { String prompt = "The file " + saveFile.getName() + " already exists. Do you want to replace the existing file"; int ret = JOptionPane.showConfirmDialog(graph, prompt, "Warning", JOptionPane.YES_NO_OPTION); if (ret == JOptionPane.NO_OPTION) { return; } } saveFile = new File(saveFile.getAbsoluteFile() + ".jpg"); FileOutputStream fos = new FileOutputStream(saveFile); JPEGImageEncoder jpegEncoder = JPEGCodec.createJPEGEncoder(fos); jpegEncoder.encode(bi); fos.flush(); fos.close(); } } catch (IOException ex) { JOptionPane.showMessageDialog(graph, "IO Error, operation failed\n" + ex.toString(), "Error", JOptionPane.PLAIN_MESSAGE); } } private Point Point(int i, int j) { Point point = new Point(i, j); return point; } } class EveryPoint implements Serializable { int x, y; Color col; int tool; int boarder; private static final long serialVersionUID = 1L; EveryPoint(int x, int y, Color col, int tool, int boarder) { this.x = x; this.y = y; this.col = col; this.tool = tool; this.boarder = boarder; } }
发表评论
-
Applet画图修改中。。。
2010-01-13 21:00 2344效果如下图: import java.applet.A ... -
Applet画图程序
2010-01-11 14:18 1764双击右键才显示功能菜单。。。 import java ... -
Applet打印
2009-11-23 15:56 2081效果如上图: import java.awt.*; i ... -
applet数字签名实践篇三(转载)
2009-11-17 18:56 2068最近在研究applet,打算使用applet来开发一个上传文件 ... -
applet数字签名实践篇二(转载)
2009-11-17 18:45 1366【摘 要】如果你要考虑在Internet上实现这个Applet ... -
applet数字签名实践篇一(转载)
2009-11-17 18:44 1564本人在报表开发之时, ... -
Applet与Servlet通信
2009-11-13 17:42 1195在今天的多层结构的web应用程序的设计中,我们可以同时使用Ja ... -
使用 Java applet 访问远程 Web 服务
2009-11-13 10:35 1913通过浏览器提交、接收和分析 XML Web 服务消息 ... -
利用Applet进行Web打印
2009-11-07 17:45 1960一web打印常见方法: 1,一种简单的方法是在html上调用w ... -
applet应用小技巧
2009-11-06 13:29 10551。获取屏幕分辩率的宽和高: int width=To ... -
applet图像的处理
2009-11-03 16:08 2080设置呈现(RenderingHints)提示 8.2 ... -
applet绘制纹理图
2009-11-03 16:04 1171其效果如下图: import java.applet.*; ... -
applet中保存canvas中的图片
2009-11-02 15:36 1631效果图如下: import java.awt.*; ... -
applet画图板程序(画直线、画圆、画笔、画矩形、调色板)
2009-10-27 17:08 5084import java.applet.*; import j ... -
applet的简单流程图绘制小工具
2009-10-27 16:58 1925使用说明如下: 1.在主区域的上面有一个写有"dr ... -
applet图形缩放类
2009-10-24 20:11 1326import java.awt.Image; import ... -
applet文字和图标的合成
2009-10-24 17:43 1625相信大家平时碰到过一些在JAVA中对图像进行处理的需求,比如需 ... -
运行applet时出现无法载入class的问题,以及设置codeBase
2009-08-13 17:57 2394最简单的方法就是:把它们放在同一个目录就不用设置啦。。。,但是 ... -
IE中Applet不能运行的问题
2009-08-13 17:49 2169applet程序正常没问题,在Html页面中的设置也没问题,只 ... -
Applet 双缓冲技术
2009-07-23 17:32 1564import java.applet.Applet; imp ...
相关推荐
以上代码展示了如何创建一个简单的Java Applet画图程序,用户可以按住鼠标左键拖动来绘制线条。 6. 总结: 通过这个基于Java Applet的简易画图程序,我们可以学习到Java事件处理机制,理解如何响应用户的鼠标操作,...
这个简单的Java画图板程序展示了如何结合GUI组件、事件处理和文件操作来创建一个交互式的绘图工具。虽然这个例子基于Applet,但在现代Java开发中,可以使用Swing或JavaFX来实现类似的功能,同时提供更好的跨平台兼容...
在Java的历史版本中,APPLET是一种可以嵌入HTML网页中的小程序,用于提供动态和交互式的网页内容。然而,随着Web技术的发展,APPLET已经过时,现在更推荐使用JApplet或者JavaFX。在本实例中,我们依然可以学习...
2. **Scribble.java**:可能是一个基础的绘图Applet,让用户能够在网页上画图。可能包含了图形绘制、颜色选择、撤销重做等功能,展示了Java Applet的基础用法。 3. **ScribbleCutAndPaste.java**:此文件可能扩展了...
12. **Applet绘图**:在Java Applet中,通常需要重写`paint()`方法来进行画图操作。 13. **源文件结构**:正确的源文件结构应为:先package,然后import,最后是类定义,即`package, import, class`。 14. **数据...
实例81 留言板程序 实例82 客户登录Servlet小程序 实例83 访问权限控制 实例84 产生密钥 实例85 对称加密 实例86 非对称加密 实例87 数字签名 实例88 数字证书 实例89SSL及HTTPS协议 实例90 Screen小程序 实例91 ...
14. **在 Applet 中画图、画图像、显示字符串用到的方法是()** - **知识点**: Java Applet 中绘制图形的方法。 - **解析**: 正确答案为 A。`paint()` 方法用于在 Applet 中绘制图形、图像和显示字符串。 15. *...
33. **Applet方法**:在Applet中,添加组件用add()方法,画图和显示字符用draw()方法。 以上是Java填空题复习题中的主要知识点,涵盖了面向对象、语法特性、数据类型、异常处理、类与对象、包和接口等多个方面。...
23.3 知识点扩展——MyEclipse开发环境对Applet程序的支持 23.3.1 MyEclipse开发环境对Applet项目的支持 23.3.2 MyEclipse开发环境对JAR的支持 23.4 小结 第24章 动画播放项目(音频操作+多线程) 24.1 动画播放原理...
**题目**:在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的哪个方法来完成一些画图操作? - A) start() - B) stop() - C) init() - D) paint() **解析**:在Applet中,`paint()`方法用于绘制图形,...
- **pbrush.exe**: 画图工具。 - **ping.exe**: 测试网络连通性的工具。 - **progman.exe**: Windows 3.x环境下的程序管理器。 - **qfecheck.exe**: 系统更新检查工具。 - **regedit.exe**: 注册表编辑器。 - **...
26. "画图"软件:Windows 98的附件中包含"画图"程序,用于创建、编辑和查看图片。 27. 局域网与广域网:局域网通常提供高有效性且可靠性高,相比之下,广域网可能在覆盖范围更广的同时牺牲一部分效率和可靠性。 28...
11.7.1 画图的实现原理 418 11.7.2 使用Graphics类 419 11.8 处理位图 425 11.8.1 Image抽象类和BufferedImage实现类 425 11.8.2 使用ImageIO输入/输出位图 427 11.9 剪贴板 432 11.9.1 数据传递的类...
因此,如果需要在Applet中实现自定义的画图功能,应该重写`paint`方法。 #### 十三、Java源文件的结构 - **知识点**: Java源文件的组织结构。 - **解析**: Java源文件的结构通常按照`package`, `import`语句,然后...
在J2ME中,MIDlet是手机应用程序的基本单元,类似于Java SE中的Application或Applet。一个MIDlet通常由一个主类和若干辅助类组成,负责应用程序的生命周期管理。在"手机游戏五子棋"中,MIDlet类可能是整个游戏的入口...
通过这个项目,你可以掌握如何构建交互式应用,并学习到游戏规则的程序化表示。 2. **计算器**:这是一个简单的计算工具,涵盖了基本的加减乘除以及可能的科学计算功能。它涉及到了控制台输入输出、运算符优先级...
12. **Applet 绘图方法**:在自定义的 Applet 子类中,通常需要重载 `paint()` 方法来进行画图操作,答案是 `D)paint( )`。 13. **源文件结构**:正确的顺序是先 `package`,然后是 `import`,最后是 `class`,...
12. 在JavaApplet程序中,通常需要重载父类的(D)paint()方法来进行画图操作。 13. 正确的顺序是(A)package, import, class。首先定义包,然后导入所需类,最后定义类。 14. 非法的是(B)float f=45.0; 因为...