PowerPoint 簡報

Similar documents

Swing-02.pdf

java2d-4.PDF

Chapter 9: Objects and Classes

2009年3月全国计算机等级考试二级Java语言程序设计笔试试题

Microsoft PowerPoint - ch02

Chapter 9: Objects and Classes

chp11.ppt

内 容 简 介 本 书 是 一 本 关 于 语 言 程 序 设 计 的 教 材, 涵 盖 了 语 言 的 基 本 语 法 和 编 程 技 术, 其 中 包 含 了 作 者 对 语 言 多 年 开 发 经 验 的 总 结, 目 的 是 让 初 学 的 读 者 感 受 到 语 言 的 魅 力, 并 掌

邀請大陸專業人士來臺從事文教相關活動參考手冊(修訂二版)

使 用 Java 语 言 模 拟 保 险 箱 容 量 门 板 厚 度 箱 体 厚 度 属 性 锁 具 类 型 开 保 险 箱 关 保 险 箱 动 作 存 取 款

JavaIO.PDF

詞 彙 表 編 號 詞 彙 描 述 1 預 約 人 資 料 中 文 姓 名 英 文 姓 名 身 份 證 字 號 預 約 人 電 話 性 別 2 付 款 資 料 信 用 卡 別 信 用 卡 號 信 用 卡 有 效 日 期 3 住 房 條 件 入 住 日 期 退 房 日 期 人 數 房 間 數 量 入

Microsoft Word - Broker.doc

[Short Essay:] 1. (5 points) Use state-of-memory diagram to describe the differences between x and y declared as follows: double[] x = new double[4];

1: public class MyOutputStream implements AutoCloseable { 3: public void close() throws IOException { 4: throw new IOException(); 5: } 6:

威 福 髮 藝 店 桃 園 市 蘆 竹 區 中 山 里 福 祿 一 街 48 號 地 下 一 樓 50,000 獨 資 李 依 純 105/04/06 府 經 登 字 第 號 宏 品 餐 飲 桃 園 市 桃 園 區 信 光 里 民

ZW1.PDF

FIT1改1.FIT)

基于JAVA的连连看游戏设计

chp6.ppt

壹 前言 一 研究動機 現今社會大眾近視比例逐年增加, 原因在於電腦不當且過度使用, 說其根本便是因為並無注意時間因此導致眼睛無法負荷, 然而使用者並非要使用如此長的時間, 或者家長規定小孩的電腦使用限制時間, 但卻沒有輔助的工具來提醒休息時間, 因此我們想了這個程式來幫助改善這個問題 二 研究目的

主程式 : public class Main3Activity extends AppCompatActivity { ListView listview; // 先整理資料來源,listitem.xml 需要傳入三種資料 : 圖片 狗狗名字 狗狗生日 // 狗狗圖片 int[] pic =new

1.5招募说明书(草案)

图形学 Project 2 要求 任意两个多边形, 求出其相交的区域 使用说明 例 1 第一步, 与 Project 1 画多边形的方法相同, 画一个多边形 ; 第二步, 单击 INTERSECT WITH, 随后画出第二个多边形 ; 第三步, 单击 FILL 进行填充

Chapter 9: Objects and Classes

電機工程系認可證照清單 /7/1

EJB-Programming-4-cn.doc

Microsoft PowerPoint - ch03

(TestFailure) JUnit Framework AssertionFailedError JUnit Composite TestSuite Test TestSuite run() run() JUnit

<4D F736F F D20C8EDC9E82DCFC2CEE7CCE22D3039C9CF>

<4D F736F F F696E74202D20332D322E432B2BC3E6CFF2B6D4CFF3B3CCD0F2C9E8BCC6A1AAD6D8D4D8A1A2BCCCB3D0A1A2B6E0CCACBACDBEDBBACF2E707074>

KillTest 质量更高 服务更好 学习资料 半年免费更新服务

Microsoft PowerPoint ppt

Chapter 19 視窗架構 (Frame Structures) 前述各章資料均顯示於 Dos ( 或命令提示字元 ) 視窗, 為了操作方便 本章將引導 圖型介面視窗之設計, 以為爾後各章節結合網路串流資訊 設計更為方便的操作介 面 圖型介面 (Graphic User Interface GU

Chapter 9: Objects and Classes

Microsoft PowerPoint - course8.ppt

javaexample-02.pdf

Java Access 5-1 Server Client Client Server Server Client 5-2 DataInputStream Class java.io.datainptstream (extends) FilterInputStream InputStream Obj

Microsoft Word - 投影片ch23

(6) 要 求 付 款 管 理 员 从 预 订 表 中 查 询 距 预 订 的 会 议 时 间 两 周 内 的 预 定, 根 据 客 户 记 录 给 满 足 条 件 的 客 户 发 送 支 付 余 款 要 求 (7) 支 付 余 款 管 理 员 收 到 客 户 余 款 支 付 的 通 知 后, 检

OOP with Java 通知 Project 4: 4 月 18 日晚 9 点 关于抄袭 没有分数

Learning Java

Java java.lang.math Java Java.util.Random : ArithmeticException int zero = 0; try { int i= 72 / zero ; }catch (ArithmeticException e ) { // } 0,

Topic

Microsoft PowerPoint - 18_Event.pptx

untitled

2 Java 语 言 程 序 设 计 教 程 简 单 性 Java 语 言 的 语 法 与 C 语 言 和 C++ 语 言 很 接 近, 使 得 大 多 数 程 序 员 很 容 易 学 习 和 使 用 Java 另 一 方 面,Java 丢 弃 了 C++ 中 很 少 使 用 的 很 难

untitled

邀請大陸專業人士來臺從事文教相關活動參考手冊(95.6)

《大话设计模式》第一章

Microsoft Word - 01.DOC

Java

1.3 最终效果图 : 2 内部布局代码 2.1 按键按钮代码 // 初始化计算器上键的按钮, 将键放在一个画板内 JPanel keypanel = new JPanel(); // 用网格布局器,4 行,5 列的网格, 网格之间的水平方向间隔为 3 个象素, 垂直方向间隔为 3 个象素 keyp

OOP with Java 通知 Project 4: 4 月 19 日晚 9 点

SDK 概要 使用 Maven 的用户可以从 Maven 库中搜索 "odps-sdk" 获取不同版本的 Java SDK: 包名 odps-sdk-core odps-sdk-commons odps-sdk-udf odps-sdk-mapred odps-sdk-graph 描述 ODPS 基

res/layout 目录下的 main.xml 源码 : <?xml version="1.0" encoding="utf 8"?> <TabHost android:layout_height="fill_parent" xml

OOP with Java 通知 Project 3: 3 月 29 日晚 9 点 4 月 1 日上课

BPS6.0 Web服务集成和短流程功能使用手册

untitled

18_GUI

任務二 : 產生 20 個有炸彈的磚塊, 放在隨機的位置編輯 Block 類別的程式碼 import greenfoot.; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) Write a description of class

<4D F736F F F696E74202D20B5DA37D5C2204A617661B5C4CDBCD0CED3EBD3C3BBA7BDE7C3E62E BBCE6C8DDC4A3CABD5D>

Microsoft Word - 正文.doc

Microsoft Word - 投影片ch20

EJB-Programming-3.PDF

全国计算机技术与软件专业技术资格(水平)考试

用手機直接傳值不透過網頁連接, 來當作搖控器控制家電 ( 電視遙控器 ) 按下按鍵發送同時會回傳值來確定是否有送出 問題 :1. 應該是使用了太多 thread 導致在傳值上有問題 2. 一次按很多次按鈕沒辦法即時反應

Microsoft Word - 投影片ch18

(京)新登字063号

图形学 Project 1 要求 多边形区域填充 ( 算法不限 ) 使用说明 例 1 第一步, 鼠标随意在界面中的画布上点击两次, 则两点间连一条直线 ; 第二步, 画第三个顶点时, 自动连结成为三角形 ; 第三步, 按顺序依次点击, 则按点击顺序形成多边形, 每次多边形变化时, 第一个点和最后

软件工程文档编制

untitled

雲端 Cloud Computing 技術指南 運算 應用 平台與架構 10/04/15 11:55:46 INFO 10/04/15 11:55:53 INFO 10/04/15 11:55:56 INFO 10/04/15 11:56:05 INFO 10/04/15 11:56:07 INFO

1.5招募说明书(草案)

第1章

Java的详细介绍

untitled

LEFT, RIGHT // 左 // 右 (2) 当图片移动后, 按钮的坐标发生改变, 此操作通过 setloca tion() 方法实现 setlocation() 方法是从 Component 类继承的, 其定义如下 : public void setlocation(int x, int y

Microsoft Word - 第5章.doc

附录J:Eclipse教程

OOP with Java 通知 Project 3 提交时间 3 月 29 日晚 9 点 Piazza Project 2 投票

單步除錯 (1/10) 打開 Android Studio, 點選 Start a new Android Studio project 建立專案 Application name 輸入 BMI 點下 Next 2 P a g e

Adobe® Flash® 的 Adobe® ActionScript® 3.0 程式設計

untitled

使用MapReduce读取XML文件

<4D F736F F F696E74202D C DB5DA3132D5C25FCDBCD0CED3C3BBA7BDE7C3E6BBF9B4A12E BBCE6C8DDC4A3CABD5D>

OOP with Java 通知 Project 4: 5 月 2 日晚 9 点

说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架

四、實務實習課程之實習工作日誌(請貼上掃描檔)

内 容 提 要 将 JAVA 开 发 环 境 迁 移 到 Linux 系 统 上 是 现 在 很 多 公 司 的 现 实 想 法, 而 在 Linux 上 配 置 JAVA 开 发 环 境 是 步 入 Linux 下 JAVA 程 序 开 发 的 第 一 步, 本 文 图 文 并 茂 地 全 程 指

第3章.doc

視窗程式設計

Microsoft PowerPoint - course2.ppt

2009年9月全国计算机等级考试二级Java真题及答案

Java 1 Java String Date

ebook111-4

untitled

個 人 的 手, 拉 著 瞎 子 的 手 把 他 帶 往 村 外 的 時 候, 對 於 瞎 子 來 講, 那 個 人 的 手 和 耶 穌 的 手 有 沒 有 區 別? 沒 有! 為 什 麼 沒 有 區 別? 因 為 對 於 一 個 瞎 子 來 說, 手 和 耳 朵 就 是 他 接 觸 世 界, 瞭

利用Java技术编写桌面软件基础

Transcription:

Paint 繪圖板 JAVA 程式設計 指導老師 : 鄞宗賢 組員 : 4A3G0901 劉彥佐 4A3G0907 韓偉志

畫面預覽

匯入參數 package paint; import java.awt.*; import java.awt.event.*; import javax.swing.*;

主程式 public class paint{ public static void main(string[] args){ Icon iconb = new ImageIcon("img/blue.gif"); // 讀取 img 裡面的圖片藍色 Icon iconm = new ImageIcon("img/magenta.gif"); // 讀取 img 裡面的圖片桃紅色 Icon iconr = new ImageIcon("img/red.gif"); // 讀取 img 裡面的圖片紅色 Icon iconbl = new ImageIcon("img/black.gif"); // 讀取 img 裡面的圖片黑色 Icon icong = new ImageIcon("img/green.gif"); // 讀取 img 裡面的圖片綠色

JFrame frame = new JFrame(" 大 yee 術家 "); // 創立一個繪圖的框架 Container content = frame.getcontentpane(); // 創建一個面板 content.setlayout(new BorderLayout()); // 設置佈局為 BorderLayout final PadDraw drawpad = new PadDraw(); // 創建一個新的 paddraw, 這是相當多的畫圖程序 content.add(drawpad, BorderLayout.CENTER); // 放置繪圖在中央 JPanel panel = new JPanel(); // 創建一個 JPanel

設定左方尺寸 panel.setpreferredsize(new Dimension(40, 70));//32 68 panel.setminimumsize(new Dimension(40, 70)); panel.setmaximumsize(new Dimension(45, 70)); // 設置面板的尺寸

JButton redbutton = new JButton(iconR); // 創建紅色按鈕, 並設置創建紅色的圖標 redbutton.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ drawpad.red(); ); //ActionListener 介面進行按鈕事件的處理 ActionEvent class 主要處理按鈕被按下的事件

按鈕 JButton blackbutton = new JButton(iconBl); // 黑色按鈕 blackbutton.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ drawpad.black(); ); JButton magentabutton = new JButton(iconM); // 桃紅按鈕 magentabutton.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ drawpad.magenta(); );

按鈕 JButton bluebutton = new JButton(iconB); // 藍色按鈕 bluebutton.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ drawpad.blue(); ); JButton greenbutton = new JButton(iconG); // 綠色按鈕 greenbutton.addactionlistener(new ActionListener(){ public void actionperformed(actionevent e){ drawpad.green(); );

blackbutton.setpreferredsize(new Dimension(16, 16)); magentabutton.setpreferredsize(new Dimension(16, 16)); redbutton.setpreferredsize(new Dimension(16, 16)); bluebutton.setpreferredsize(new Dimension(16, 16)); greenbutton.setpreferredsize(new Dimension(16,16)); // 按鈕的尺寸 panel.add(greenbutton); panel.add(bluebutton); panel.add(magentabutton); panel.add(blackbutton); panel.add(redbutton); // 把 buttons 加進去 panel

content.add(panel, BorderLayout.WEST); // 將 Panel 設置到左側 frame.setsize(500, 450); // 設置 Size 的大小 frame.setdefaultcloseoperation(jframe.exit_on_close); // 按叉叉可以直接關閉視窗 frame.setvisible(true); // 顯示視窗

繪圖 class PadDraw extends JComponent{ Image image; // 宣告要畫的地方 Graphics2D graphics2d; // 繪圖 Graphics2D int currentx, currenty, oldx, oldy; // 宣告座標

座標 public PadDraw(){ setdoublebuffered(false); addmouselistener(new MouseAdapter(){ public void mousepressed(mouseevent e){ oldx = e.getx(); oldy = e.gety(); ); // 按下滑鼠 oldx,oldy // 座標為滑鼠 X 和 Y

滑鼠移動 addmousemotionlistener(new MouseMotionAdapter(){ public void mousedragged(mouseevent e){ currentx = e.getx(); currenty = e.gety(); if(graphics2d!= null) graphics2d.drawline(oldx, oldy, currentx, currenty); repaint(); oldx = currentx; oldy = currenty; ); // 當滑鼠移動設置 currentx,currenty 作為滑鼠 x 和 y // 然後將其繪製在坐標線 // 重新繪製, 並設置 oldx 和 oldy 作為 currentx 和 CurrentY

public void paintcomponent(graphics g){ if(image == null){ image = createimage(getsize().width, getsize().height); graphics2d = (Graphics2D)image.getGraphics(); graphics2d.setrenderinghint(renderinghints.key_antialiasing, RenderingHints.VALUE_ANTIALIAS_ON); clear(); g.drawimage(image, 0, 0, null); // 畫布

public void clear(){ graphics2d.setpaint(color.white); graphics2d.fillrect(0, 0, getsize().width, getsize().height); graphics2d.setpaint(color.black); repaint(); // 空白

public void red(){ graphics2d.setpaint(color.red); repaint(); // 紅色畫筆 public void black(){ graphics2d.setpaint(color.black); repaint(); // 黑色畫筆 public void magenta(){ graphics2d.setpaint(color.magenta); repaint(); // 桃紅畫筆

public void blue(){ graphics2d.setpaint(color.blue); repaint(); // 藍色畫筆 public void green(){ graphics2d.setpaint(color.green); repaint(); // 綠色畫筆

報告結束