以下に java.awt.graphics クラスの主なメソッドを示す (Graphics クラスの ) メソッド drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int width, int height) fillr

Size: px
Start display at page:

Download "以下に java.awt.graphics クラスの主なメソッドを示す (Graphics クラスの ) メソッド drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int width, int height) fillr"

Transcription

1 第 5 章グラフィックス, スレッドとマウスイベントによる描画処理 描画処理およびマルチスレッドの基礎についてそれぞれ理解し,Java を用いてイベント処理を組み合わせたプログラムを作成する 5.1 描画処理 最初に, パネル上にグラフィックス描画を行う方法について説明する グラフィックスを表示するにはフレームにパネルを配置し, 処理内容を paintcomponent メソッド内に記述する paintcomponent メソッドは java.awt.graphics クラスのオブジェクト g に対して, グラフィックスメソッド (drawline は線,drawRect は四角, など ) を使用する public paintcomponent(graphics g){ super.paintcomponent(g); g.drawline(0, 0, 200, 200); // グラフィック処理を記述 グラフィック処理は座標 ( ピクセル ) による指定で行われる パネルの座標原点はタイトルバー下 ( 枠内 ) の左上隅となり,x 座標 ( 水平 ) 右方向,y 座標 ( 垂直 ) 下方向がそれぞれ+となる 5-1

2 以下に java.awt.graphics クラスの主なメソッドを示す (Graphics クラスの ) メソッド drawline(int x1, int y1, int x2, int y2) drawrect(int x, int y, int width, int height) fillrect(int x, int y, int width, int height) clearrect(int x, int y, int width, int height) drawroundrect(int x, int y, int width, int height, int arcwidth, int archeight) fillroundrect(int x, int y, int width, int height, int arcwidth, int archeight) drawoval(int x, int y, int width, int height) filloval(int x, int y, int width, int height) Color getcolor() setcolor(color c) 説明 直線を描く (x は水平方向,y は垂直方向 ) (x1, y1) 始点の座標 (x2, y2) 終点の座標 矩形 ( 四角 ) の輪郭を描く (x, y) 矩形の左上隅の座標 width 矩形の幅 height 矩形の高さ 矩形 ( 四角 ) を塗りつぶして描く 引数は上記と同様 矩形 ( 四角 ) を ( 現在の描画表面の ) バックグラウンドカラーで塗りつぶして消す 引数は上記と同様 丸いコーナー付きの矩形 ( 角丸四角 ) の輪郭を描く (x, y) 矩形の左上隅の座標 width 矩形の幅 height 矩形の高さ arcwidth 4 隅の弧の水平方向の直径 archeight 4 隅の弧の垂直方向の直径 丸いコーナー付きの矩形 ( 角丸四角 ) を塗りつぶして描く 引数は上記と同様 楕円の輪郭を描く (x, y) 楕円の左上隅の座標 width 楕円の幅 height 楕円の高さ 楕円を塗りつぶして描く 引数は上記と同様 現在の色を java.awt.color クラスのオブジェクトで返す現在の色を java.awt.color クラスのオブジェクト ( 引数 ) で指定された色に設定 5-2

3 また,java.awt.Color クラスでは下表のような基本色がフィールドで定義されており,java.awt. Graphics クラスのオブジェクトにおいて描画色を設定することができる ( ちなみに初期状態は black である ) フィールド名説明 ( 色 ) black cyan gray lightgray orange red yellow blue darkgray green magenta pink white 黒シアングレイライトグレイオレンジ赤黄青ダークグレイ緑マゼンタピンク白 さらに, この java.awt.color クラスにはいくつかのコンストラクタが定義されているが, その代表的なものを下表に示す コンストラクタ 説明 Color(int rgb) ビット 16~23 の R 部分, ビット 8~15 の G 部分, ビット 0~7 の B 部分より合成された RGB 値を使って, 不透明な srgb カラーを生成 Color(int r, int g, int b) 0~255 の範囲で指定された R,G,B の値を使って, 不透明な srgb カラーを生成 Color(int r, int g, int b, int a) 0~255 の範囲で指定された R,G,B の値, およびアルファ値を使って, srgb カラーを生成 5-3

4 5.1.1 描画の色指定 java.awt.color クラスで色を生成する場合, 前述の通り色を表す定数を指定する方法以外に RGB 法による red,green,bule の各成分を 0~255 の値で指定する方法がある RGB 値 (16 進表記 ) (R, G, B) (10 進表記 ) 説明 ( 色 ) (0, 0, 0) 黒 ff ff ff (255, 255, 255) 白 ff (255, 0, 0) 赤 00 ff ff (0, 255, 255) シアン 00 ff 00 (0, 255, 0) ライム ff 00 ff (255, 0, 255) マゼンタ ff (0, 0, 255) 青 ff ff 00 (255, 255, 0) 黄 詳細は, 前章 ( 第 4 章 ) を参照のこと 5-4

5 5.2 スレッド処理 スレッド (thread) とは, プログラムにおける処理の流れの単位のことを示す このスレッド処理が複数並行しておこなわれるとき, 実際に働いているのは 1 つのプログラムであるが, 複数のプログラムが動いているかのように異なる処理を同時に行う処理をおこなっている これをマルチスレッド処理という スレッド状態説明 (state) 新規状態 new 演算子などによって生成された状態 実行開始は startメソッドを呼び出す 実行可能状態 start メソッドが呼び出されると実行可能状態となる スレッドの実行順序は,OS に任される ブロック状態スレッドを一時停止したり, スレッドが何かに対して待機すると, スレッドは待機状態となる 終了状態スレッドの run メソッドが最後まで実行され, 正常終了した場合, または, 途中で何らかのエラーによって異常終了した場合には, スレッドは終了状態となる このようなスレッドの機能を実現する元のインタフェースは Runnable であり, インスタンスを 1 つのメソッドで実行するすべてのクラスには, このインタフェースの実装が必要である Runnable の中には run というメソッド ( 引数は無し ) が定義されている これはスレッドを実行するために必要であり, この中にアクティブな処理を追加する この Runnable を実装した Java API のクラスとして,Thread がある (Runnable のサブクラスではない ) Thread では run が呼び出せる他, その run を呼び出してスレッドの実行を開始する start, 実行中のスレッドを指定された引数の時間 ( ミリ秒 ) で中断させる sleep といったメソッドが使用できる 5-5

6 5.2.1 再描画処理 前述の通り, スレッドでは run メソッドの中でアクティブな処理を追加することができるが, この中で, 既に描画された結果をその処理後の結果で再描画するためのメソッドとして, java.awt.component クラス ( もしくは javax.swing.jcomponent クラス, すなわちこれまでの演習でも使用していた JPanel のスーパークラス ) の中に定義された repaint が使用できる メソッド repaint() repaint(int x, int y, int width, int height) 概要および記述コンポーネント ( 全体 ) を再びペイントコンポーネントの指定された場所の矩形領域を再びペイント 5-6

7 5.3 マウスのイベント処理 javax.swing コンポーネントにおけるマウスイベント処理は, 書式が下のようになり, 次項に示すクラス メソッドを用いておこなう イベント処理 ( 書式例 ) add イベントリスナークラス名 (new アダプタークラス名 ()){ public イベント処理メソッド名 ( イベントクラス名 e){ // イベント処理の内容 各イベント処理メソッドで使用する引数 (e) には,MouseEvent クラスのオブジェクトを使用する このクラスで使用できるメソッド getx,gety により, イベントが発生した位置の x( 幅方向 ),y( 高さ方向 ) の各座標をそれぞれ, 発生元のコンポーネントに対する相対位置で返すことができる ( 例 ) int x = e.getx(); int y = e.gety(); これら ( イベントの種類 ) をまとめると, 下記の表のようになる イベント イベントリスナー アダプター イベント処理 クラス名 クラス名 クラス名 メソッド名 MouseEvent MouseListener MouseAdapter mouseclicked ( クリック系イベント用 ) mouseentered mouseexited mousepressed mousereleased MouseMotionListener MouseMotionAdapter mousedragged ( ドラッグ系イベント用 ) mousemoved 5-7

8 上記の各イベントに対する書式例は以下のようになる ( 各イベントとも, すべてのメソッドの記述が空の場合であれ必要にある ) イベント処理 MouseListener ( クリック系イベント用 ) 書式例 public class クラス名 extends JFrame implements MouseListener{ // JFrame クラスに MouseListener クラスの機能を提供 addmouselistener(this); public mouseclicked(mouseevent e){ // マウスクリック ( 押してから離す ) 時の処理 public mouseentered(mouseevent e){ // マウスコンポーネントに入った時の処理 public mouseexited(mouseevent e){ // マウスコンポーネントから出た時の処理 public mousepressed(mouseevent e){ // マウスプレス ( 押し続ける ) 時の処理 MouseMotionListener ( ドラッグ系イベント用 ) public mousereleased(mouseevent e){ // マウスのボタンを離した時の処理 public class クラス名 extends JFrame implements MouseMotionListener{ // JFrame クラスに MouseMotionListener クラスの機能を提供 addmousemotionlistener(this); public mousedragged(mouseevent e){ // ドラッグ操作時の処理 public mousemoved(mouseevent e){ // ムーブ操作時の処理 5-8

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt) 独習 Java 第 3 版 14.1 代行イベントモデル 14.2 イベントクラス 14.3 イベントリスナ 14.1 代行イベントモデル (1/3) アプレットは GUI を提供する GUI ベースのプログラムはイベントドリブンであり コンソールアプリケーションはイベントドリブンでない イベントドリブンとは ユーザや他のプログラムが実行した操作 ( イベント ) に対応して処理を行なうプログラムの実行形式

More information

Microsoft PowerPoint - prog10.ppt

Microsoft PowerPoint - prog10.ppt プログラミング言語 3 第 10 回 (2007 年 12 月 03 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 03 日分と書いてある部分が 本日の教材です

More information

Microsoft PowerPoint prog1_doc2x.pptx

Microsoft PowerPoint prog1_doc2x.pptx アプレット public class extends Applet { public void paint(graphics g) { // アプレット描画 g.drawstring( Hello World, 10, 20 ); page 1 アプレット : 色 public class extends Applet { Color col; // カラークラス int red, grn, blu;

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ ジナルのウィンドウを作成する

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 5 回 第 3 章継承 91 継承 ( インヘリタンス ): ウインドウシステムを例に説明 図 3.1: ウインドウの中にラベル, ボタン, リストの部品 各部品の属性と操作共通の属性と操作 ウインドウ内の左上を原点として (x, y) で場所指定 : 属性 (width, height) でサイズ指定 : 属性 識別のための名前 (name): 属性 置く位置の指定 (setlocation,

More information

次の演習課題(1),(2)のプログラムを完成させよ

次の演習課題(1),(2)のプログラムを完成させよ 次の演習課題 (1),(2) のプログラムを作成せよ. 課題 (1) ボタン押下時の処理を追加し以下の実行結果となるようにプログラムを作成しなさい ( ボタン押下時の処理 ) import java.lang.*; class Figure extends JFrame implements ActionListener{ JPanel panel; JScrollPane scroll; JTextArea

More information

Microsoft PowerPoint - prog10.ppt

Microsoft PowerPoint - prog10.ppt プログラミング言語 3 第 10 回 (2007 年 12 月 03 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/40 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 03 日分と書いてある部分が 本日の教材です

More information

ガイダンス

ガイダンス プログラムの 1 行目に自分の名前を入れること // vm12345 杉崎えり子 情報科学 B 第 14 回課題作成 3 情報科学 B Info2/3 info14 今日のフォルダー作成 情報科学 B 第 14 回課題作成 3 Report14_1.java 1 教科書 資料 過去のプログラムを見ながらで OK 課題 3( 提出 ) ボタンとアニメーション ( 第 13 回 ) を組み合わせて オリ

More information

<4D F736F F F696E74202D AC C8899E D834F E >

<4D F736F F F696E74202D AC C8899E D834F E > Java 簡単な応用プログラム ( その 2) Java は すでにある部品群を上手く使ってプログラムを組み立てます 前回と同様に Frame を使って ウインドウを表示するプログラムを作りましょう. Frameは ウインドウを作るための部品で フレーム ( 枠 ) とタイトルおよび, 決められた仕組みが入っています. java.awt パッケージは, ウインドウ関連の部品が多くあります. javax.swing

More information

PowerPoint Presentation

PowerPoint Presentation 上級プログラミング 2( 第 3 回 ) 工学部情報工学科 木村昌臣 今日のテーマ GUI プログラミング入門 AWT Java で GUI を作る方法 (API) AWT Abstract Window Toolkit GUIをつくるクラス群を提供 ( 基本!) OSによらない外観 Swing 逆にいえば OS ネイティブな look and feel ではない AWT をもとに JavaFX JDK1.8

More information

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 ///////////////////

Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 /////////////////// Assignment_.java 0 0 0 0 0 /////////////////////////////////////////////////////////// // 課題 次のようにマウスのカーソルに同期しメッセージを /////////////////////////////////////////////////////////// class Assignment_ extends

More information

Microsoft PowerPoint - OOP.pptx

Microsoft PowerPoint - OOP.pptx 第 14 回 第 12 章アプレット 28 8 アプレットとは アプレット : ウェブ上で HTML のソースコードから参照されるプログラム.Web サーバや Web ブラウザ ( アプレットビューア ) から動的にアプレットはダウンロードされる. 289 HelloAp.java アプレットの基本事項 public class HelloAp extends Applet{ public void

More information

Microsoft PowerPoint prog1_doc2.pptx

Microsoft PowerPoint prog1_doc2.pptx 2011 年 12 月 6 日 ( 火 ) プログラミング Ⅰ Java Applet プログラミング 文教大学情報学部経営情報学科堀田敬介 アプレット Applet public class クラス名 extends Applet { public void paint(graphics g) { // アプレット描画 g.drawstring( Hello World, 10, 20); 10

More information

ÿþ˜u#u·0¹0Æ0à0

ÿþ˜u#u·0¹0Æ0à0 応用プログラミング - イベント処理 - イベント : プログラムへの働きかけ (GUI のボタンをクリックする, キーボードよりデータを入力するなど ) イベント処理 ( イベントハンドリング ): イベントに対する応答及びそのプログラム処理 イベントを処理するプログラムは イベントが発生した場合にのみ 呼び出される ( イベントドリブン ) GUI イベント イベント処理のプログラム イベント処理の仕組みと流れ

More information

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped

KeyListener init addkeylistener addactionlistener addkeylistener addkeylistener( this ); this.addkeylistener( this ); KeyListener public void keytyped KeyListener keypressed(keyevent e) keyreleased(keyevent e) keytyped(keyevent e) MouseListener mouseclicked(mouseevent e) mousepressed(mouseevent e) mousereleased(mouseevent e) mouseentered(mouseevent e)

More information

Chapter JDK KeyListener keypressed(keyevent e ) keyreleased(keyevent e ) keytyped(keyevent e ) MouseListener mouseclicked(mouseeven

Chapter JDK KeyListener keypressed(keyevent e ) keyreleased(keyevent e ) keytyped(keyevent e ) MouseListener mouseclicked(mouseeven Chapter 11. 11.1. JDK1.1 11.2. KeyListener keypressed(keyevent e ) keyreleased(keyevent e ) keytyped(keyevent e ) MouseListener mouseclicked(mouseevent e ) mousepressed(mouseevent e ) mousereleased(mouseevent

More information

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav

I. (i) Foo public (A). javac Foo.java java Foo.class (C). javac Foo java Foo (ii)? (B). javac Foo.java java Foo (D). javac Foo java Foo.class (A). Jav 2018 06 08 11:00 12:00 I. I III II. III. IV. ( a d) V. VI. 80 40 40 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java 第 3 版 13.1 アプレットの概要 13.2 最初の Java アプレット 13.3 アプレットのライフサイクル 13.4 Graphics クラス アプレットの概要 (1/3) Web ページの HTML ソースコードから参照されるプログラム Web サーバーからブラウザに動的にダウンロードされる ダウンロードされたアプレットはブラウザの環境で実行される アプレットビューアなどのツールで実行することもできる

More information

1 JAVA APPLET 実習 1. はじめに Java フォルダに applet フォルダを作成する 2. 実習問題の作成 J01.java public class J01 extends Applet{ public void paint(graphics kaku){ kaku.drawstring("hello World from Java!",60,70); j01.html

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

手書認識 グラフ描画 Step2-2 手書認識 : 認識結果を PaintPanel で描画する < 属性付き文字列 AttributedString> 標準出力では分かりにくいうえに認識結果を使えないので 認識するごとに PaintPanel に文字を描画することにする ここで 数式はただの文字列

手書認識 グラフ描画 Step2-2 手書認識 : 認識結果を PaintPanel で描画する < 属性付き文字列 AttributedString> 標準出力では分かりにくいうえに認識結果を使えないので 認識するごとに PaintPanel に文字を描画することにする ここで 数式はただの文字列 手書認識 グラフ描画 Step2-2 手書認識 : 認識結果を PaintPanel で描画する < 属性付き文字列 AttributedString> 標準出力では分かりにくいうえに認識結果を使えないので 認識するごとに PaintPanel に文字を描画することにする ここで 数式はただの文字列ではなく 2 乗などの上付き文字がある これを描画するのに 通常の drawstring を使うと 文字の描画位置の取得が大変なので

More information

Animals サンプル Step 1 動物の種類を指定しておいて クリックした場所に画像を貼り付ける < レイアウトについて > 前回は ラベルやボタンの位置を座標で設定した Absolute Layout を選んだためである レイアウトは どのようにボタンなどのコンポーネントを配置するかを決定す

Animals サンプル Step 1 動物の種類を指定しておいて クリックした場所に画像を貼り付ける < レイアウトについて > 前回は ラベルやボタンの位置を座標で設定した Absolute Layout を選んだためである レイアウトは どのようにボタンなどのコンポーネントを配置するかを決定す GUI プログラミング第 2 回演習 Animals ~ 画像描画と音声再生 : 動物が増える 鳴く ~ 学習キーワード : イベント (ActionEvent, MouseEvent) レイアウト 可変長配列 (List) 継承 例外処理 タイマー処理 ニャー ワン カー 今回のサンプルは ステップ 1 からステップ 3 まで各自順に進めていく Step3

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM IDESun Microsystems Oracle NetBeans, IBM 1 Eclipse 2, JetBrains IntelliJ IDEA IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 GUI

More information

Graphical User Interface 描画する

Graphical User Interface 描画する Graphical User Interface 描画する オブジェクト指向プログラミング特論 2016 年度 只木進一 : 工学系研究科 2 描画の基本 javax.swing.jpanel に描画する paint() または paintcomponent() メソッドを上書きすることによって描画する この中で描画対象を描く 基本的図形要素は準備されている しかし 画面の重なりによる再描画の場合

More information

Animals サンプル Step3 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く その鳴く間 一定時間 ( ここでは 1 秒間 ) 画像が別のものに変わる <アニメーションの基礎 : タイマーについて> アニメーションは アプリケーションが指定する間 一定間隔でどんどん画像をおきかえ

Animals サンプル Step3 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く その鳴く間 一定時間 ( ここでは 1 秒間 ) 画像が別のものに変わる <アニメーションの基礎 : タイマーについて> アニメーションは アプリケーションが指定する間 一定間隔でどんどん画像をおきかえ Animals サンプル Step3 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く その鳴く間 一定時間 ( ここでは 1 秒間 ) 画像が別のものに変わる アニメーションは アプリケーションが指定する間 一定間隔でどんどん画像をおきかえていくものである このサンプルでは 動物画像の上をクリックすると画像を切り替え 1 秒後 もとの画像に戻す操作をする

More information

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2.

Java 2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q 2. Java 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDE Sun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs

More information

Prog2_11th

Prog2_11th 2012 年 12 月 6 日 ( 木 ) 実施 GUIプログラミング今回及び次回の授業では,Java 言語での GUI プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT (Abstract Window Toolkit) 2) Swing AWT は Java 言語の当初から実装されていた標準の

More information

3D 描画 Step2 マウスで回転できるようにする ベクトル (a, b, c) を軸として右回りに rot 度の回転は glrotatef(rot, a, b, c); で実行される 従って 座標軸の回転はそれぞれ x 軸まわり,y 軸まわりの回転量 (degree で表す ) を rotx, roty をとすると x 軸まわりの回転は glrotatef(rotx, 1.0f, 0.0f, 0.0f);

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

Animals サンプル Step 2 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く < 例外について > エラーや 通常の処理の中では起こってはいけない事象のことを例外といい 例外が起こる可能性がある場合はその対応処理を記述しなければならない 一般に java.lang パッケージの

Animals サンプル Step 2 張り付けた動物の上をクリックすると それぞれの鳴き声で鳴く < 例外について > エラーや 通常の処理の中では起こってはいけない事象のことを例外といい 例外が起こる可能性がある場合はその対応処理を記述しなければならない 一般に java.lang パッケージの Step2 を始める前に 音声が鳴るかどうかを確かめます 手順 1. 共有フォルダにある SoundTest.jar を適当な場所にコピー 2.PC のミュートを外す 3. ディスプレイのボリュームボタンを 0 以上にする 4. コピーした SoundTest.jar をダブルクリック 5. サウンド再生 1 をクリックしてみる 6.5 で鳴らなかったら サウンド再生 2 をクリックしてみる 7.6

More information

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B

2 p.2 2 Java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.java Java : Q B 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems NetBeans, IBM 1 Eclipse 2 IDE GUI JDK Java 2.1 Hello World! 2.1.1 Java 2.1.1 Hello World Emacs Hello0.java

More information

問1

問1 2008/12/10 OOP 同演習小テスト問題 問 1. 次のプログラムの出力結果を a~d の中から選べ public class Problem1 { public static void main(string[] args){ int i =2; int j =3; System.out.println( i + j ); a) 23 b) 5 c) ij d) i+j 問 2. 次のプログラムの出力結果を

More information

Microsoft Word - Java3.DOC

Microsoft Word - Java3.DOC Java 入門 ( 5) 科名 T u t o r i a l g r o u p 氏 名 1 Abstract Window Toolkit(AWT) Abstract Window Toolkit(AWT) は Java の GUI(Graphical User Interface) 構築の最も基本となるライブラリパッケージである Abstract Window Toolkit(AWT) の特徴は

More information

JAVA入門

JAVA入門 JAVA 入 門 後 期 3 JAVAのGUI (JavaのGUI 基 本 構 造 いろいろなアプレット) 1.GUI 構 造 GUI 構 造 JAVAでGUIを 構 築 するクラスとして 下 記 のがあります 1アプレットパッケージ 2AWT 3Swing 特 に2 3はコンポーネント パッケージを 利 用 1アプレット 概 要 特 徴 GUI 構 造 1. 最 初 から GUI 環 境 が 用

More information

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含

awt の主要なクラスを下記に示す クラス Component Container Button Label Panel Frame 説明画面にユーザインターフェイス要素として表示し, ユーザとのやり取りを行うコンポーネントを表すすべてのコンポーネントのスーパークラスになる ほかのコンポーネントを含 第 3 章 GUI による電卓の実装 GUI の基礎とイベント処理について理解し, 前章で作成した演算プログラムを組み込んで電卓を作成 ( 実装 ) する 3.1 インターフェイス 文字などのコマンドだけでやりとりするインターフェイスを CUI(Command User Interface) と呼び, マウスなどでウインドウを操作して行うインターフェイスを GUI(Graphical User Interface)

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 3 回継承 オーバーライド インタフェース 前回までのお話 モジュール化 大きなプログラムは部品に分けて設計する オブジェクト指向 モノ中心に考える プログラムでは クラス ( モノの種類 ) を定義する ある特定のモノは インスタンスで表す クラスは型 インスタンスは値 プログラムを書くときも部品ごとに書く モノの部品であるモノはフィールドに書く 手順の部品である手順はメソッドに書く

More information

// ステージを設定します stage.setscene(scene); stage.settitle(" キャンバス "); // ステージを表示します stage.show(); public static void main(string[] args) launch(args); キャンバス

// ステージを設定します stage.setscene(scene); stage.settitle( キャンバス ); // ステージを表示します stage.show(); public static void main(string[] args) launch(args); キャンバス HCI プログラミング 11 回目グラフィックス 今日の講義で学ぶ内容 キャンバスと図形描画 マウスを用いたインタラクション ラジオボタンなど GUI 部品を用いたインタラクション キャンバスと図形描画 1 キャンバスに線を引いてみましょう 画用紙を表すキャンバスに図形を描くことができます ソースファイル名 :Sample11_1.java // HP よりインポート文をここへ貼り付けてください //

More information

Java 2 - Lesson01

Java 2 - Lesson01 第 2 回 GUI コンポーネントのイベント処理 GUI Component Event Handling キーポイント イベント イベントリスナー イベント処理とは何か? ActionEventとActionListenerについて ItemEventとItemListenerについて TextEventとTextListenerについて KeyEventとKeyListenerについて AdjustmentEventとadjustmentListenerについて

More information

Prog1_12th

Prog1_12th 2014 年 7 月 3 日 ( 木 ) 実施 GUIプログラミング今回の授業では,Java 言語での GUI(Graphical User Interface) プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT(Abstract Window Toolkit) 2) Swing AWT

More information

このような 回転や平行移動による座標変換の情報は ModelView 行列 が持っている ModelView 行列は gl.glpushmatrix() でいったん保存しておき 回転や平行移動を重ねて描画した後 gl.glpopmatrix() で保存した状態に戻すことができる ワールド座標系とウィ

このような 回転や平行移動による座標変換の情報は ModelView 行列 が持っている ModelView 行列は gl.glpushmatrix() でいったん保存しておき 回転や平行移動を重ねて描画した後 gl.glpopmatrix() で保存した状態に戻すことができる ワールド座標系とウィ 3D 描画 Step3 元素名を 2D 描画する OpenGL には文字描画の概念がないこと 元素名は回転してほしくないことの 2 点の理由から 元素名は 2D 描画する そのために 原子の 3 次元空間の座標から 文字を描画するウィンドウ上の座標を求める < 座標変換について > 座標変換について まとまった詳しい解説は OpenGL による 3D 描画の基礎知識 の 3 ページ以降に記述してあるので

More information

2008 e-learning T050050

2008 e-learning T050050 e-learning T050050 e-learning B NintendoDS e-learning html 1 e-learning Java Applet html 2 2008 e-learning T050050 1 1 1.1.................................. 1 1.2............................ 1 2 2 2.1..............................

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 8 回ウインドウ部品を用いる (1) 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 前回の課題 (1) マウスを使って, 前回課題で作成した 6 4 のマスの図形で, \ をマウスクリックによって代わるようにしなさい 前回の課題 (2) import java.applet.applet; import java.awt.*;

More information

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec

I 4 p.2 4 GUI java.awt.event.* import /* 1 */ import mouseclicked MouseListener implement /* 2 */ init addmouselistener(this) this /* 3 */ this mousec I 4 p.1 4 GUI GUI GUI 4.1 4.1.1 MouseTest.java /* 1 */ public class MouseTest extends JApplet implements MouseListener /* 2 */ { int x=50, y=20; addmouselistener(this); /* 3 */ public void mouseclicked(mouseevent

More information

アプレットⅣ

アプレットⅣ アプレット Ⅳ JV4 今回の課題項目 アプレット ( イベント処理 イベントリスナ ) アプレット ( イベントリスナクラスの作成 ) アプレット ( イベントリスナの登録 ) アプレット ( イベント発生時の処理 ) アプレット ( イベントの各種実装方法 ) アプレット ( イベントアダプタ ) アプレット ( 委譲モデル ) 今回の重点項目 アプレット ( イベントリスナ ) アプレット (

More information

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j

2 p.2 2 Java > javac Hello0.java Hello0.class JVM Hello0 java > java Hello0.class Hello World! javac Java JVM java JVM : Java > javac 2> Q Foo.j 2 p.1 2 Java Java JDK Sun Microsystems Oracle JDK javac Java java JVM appletviewer IDESun Microsystems Oracle NetBeans, IBM 1 Eclipse 2, JetBrains IntelliJ IDEA IDE GUI JDK Java 2.1 Hello World! 2.1.1

More information

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由

表示の更新もそういた作業のひとつに当たる スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない その理由 Java 独習第 3 版 13.12 スレッドの使用 13.13 ダブルバッファリング 2006 年 7 月 12 日 ( 水 ) 南慶典 表示の更新もそういた作業のひとつに当たる 13.12 スレッドの使用アニメーション アニメーションやシミュレーションなどは画面の更新が一定のタイミングで行われていく この連続した画面の更新をスレッドを利用して行う しかし paint() メソッドを直接呼び出して表示を更新することはできない

More information

r3.dvi

r3.dvi 10 3 2010.9.21 1 1) 1 ( 1) 1: 1) 1.0.1 : Java 1 import java.awt.*; import javax.swing.*; public class Sample21 extends JPanel { public void paintcomponent(graphics g) { g.setcolor(new Color(255, 180, 99));

More information

Prog1_12th

Prog1_12th 2018 年 7 月 5 日 ( 木 ) 実施 GUIプログラミング今回の授業では,Java 言語での GUI(Graphical User Interface) プログラミングの基礎について学習する GUIツールキット Java 言語では,GUI プログラミング用のツールキットとして, 次のものが用意されている 1) AWT(Abstract Window Toolkit) 2) Swing AWT

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

ソフトウェア開発方法論2

ソフトウェア開発方法論2 ソフトウェア開発方法論 2 情報システム工学特別講義 ( 渕田 ) 開発依頼 研究法人 AA 研究所では 構造立体研究の一部として 以下のような図形管理を行うシステムを発注する 名称 : 図形管理システム 機能 : 以下の機能を持つ 1. 画面の何もないところをクリックすることで 図形を画面上に配置することができる 配置できる図形は円 三角 四角の3つを選択でき 大きさは決まっている 2. 図形の色は

More information

Microsoft PowerPoint - swing3.ppt

Microsoft PowerPoint - swing3.ppt Java/Swing について (3) 2005 年 10 月 19 日 海谷治彦 1 目次 メニューと AbstractAction ダイアログ ファイルダイヤログ Inner Class ( 内部クラス ) Anonymous Inner Class ( 無名内部クラス ) GUI でもちっとはクラス図を使おう. 実行可能アーカイブ (jar) の作り方 エクリプス無しでも実行したい. 2 メニューと

More information

プログラミング入門1

プログラミング入門1 プログラミング入門 2 第 6 回継承 コンストラクタ 1 講義資料について 新しい言語の機能 ( オブジェクト指向の機構 ) については 随時参考書などを参照するのがよい 過去の資料も参考になる http://java2005.cis.k.hosei.ac.jp/ 今回の範囲は 上記ページの 17 回に詳しい 2 テーマ : 継承 コンストラクタ 継承 (inheritance) インスタンス変数の継承

More information

ブロック崩し Step1 矢印キーで左右に動かせるパドルを描画する < パドルの表現方法 > パドルは java.awt パッケージの Rectangle という Java が用意しているクラスを使う これは四角形を表すクラスで 左上の点の座標と幅 高さをもっている (x, y) Rectangle

ブロック崩し Step1 矢印キーで左右に動かせるパドルを描画する < パドルの表現方法 > パドルは java.awt パッケージの Rectangle という Java が用意しているクラスを使う これは四角形を表すクラスで 左上の点の座標と幅 高さをもっている (x, y) Rectangle GUI プログラミング第 3 回演習 BlockBreaker ~ かんたんブロック崩しゲーム ~ パドルを左右に操作して落ちてくるボールを反射させ 上のブロックを崩していく ブロック ボール パドル 1.eclipse.zip を D: ドライブにコピーし 右クリック ここに解凍 2.workspace を S: ドライブから D: ドライブにコピー 3.eclipse.exe

More information

< F2D F B834E2E6A7464>

< F2D F B834E2E6A7464> ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか

More information

Prog2_9th

Prog2_9th 2017 年 11 月 30 日 ( 木 ) 実施 Canvas による描画 Canvas とは Canvas は, 描画コールを保持するためのクラスである 描画には, 次の 4 つの要素が必要である (1) ビットマップピクセル ( 画素 ) を保持 (2) キャンバス描画コール ( ビットマップへの書き出し要請 ) に対応 (3) 描画プリミティブ描画領域, パス, テキスト, ビットマップ等

More information

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1

Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 1 Chapter 20. [ ] ; [ ] = new [ ] ; Color colors [ ] = new Color[ 20 ]; // 20 Button operations [ ] = new Button[ 10 ]; // 10 colors[ 3 ] = new Color( 10, 30, 40 ); gc.setcolor( colors[ 3 ] ); operations[

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 独習 Java 第 3 版 13.9 Applet クラス 13.10 AppletContext インターフェイス 13.11 イメージの使用 Applet クラス 右の図は Applet クラスのスーパークラスの継承関係を示す 上の 4 つのクラスから Applet クラスに状態と動作が継承される java.lang.object Java.awt.Component java.awt.container

More information

Microsoft PowerPoint - prog11.ppt

Microsoft PowerPoint - prog11.ppt プログラミング言語 3 第 11 回 (2007 年 12 月 10 日 ) 1 今日の配布物 片面の用紙 1 枚 今日の課題が書かれています 本日の出欠を兼ねています 2/57 1 今日やること http://www.tnlab.ice.uec.ac.jp/~s-okubo/class/java06/ にアクセスすると 教材があります 2007 年 12 月 10 日分と書いてある部分が 本日の教材です

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2016/03/11 NetBeans ではじめる Java 第二回 画像処理ソフトウェアの開発 ArkOak 代表 加納徹 Java 講習会の流れ 5. 画像の入出力 6. マウスによる画像情報の取得 7. 画像の上からお絵描き 8. 画像処理ソフトウェアの開発 2 5. 画像の入出力 新規プロジェクト ImageProcessing を作ろう 画像の入出力 1. 以下のようにラベルとボタンを配置

More information

< F2D B838A835882CC8CF68EAE2E6A7464>

< F2D B838A835882CC8CF68EAE2E6A7464> ウォーリスの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のウォーリスの公式を用いて π の近似値を求めてみましょう [ ウォーリスの公式 ] π=2{ 2 2 4 4 6 6 1 3 3 5 5 7 シミュレーションソフト ウォーリスの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください 2.Java アプレット (1) Javaプログラムリスト

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 1 02 グラフゖックで簡単な図形を描く図形描画プログラム 1 今回作成するゕプリケーションの概要 ボタンをクリックすると図形を描くプログラム 行われる動作 [1] ボタンをクリック [2] そのボタンに対する図形を描く これを使用者とコンピュータの関係で描くと [ 使用者 コンピュータ ] ボタンをクリック [ 使用者 コンピュータ ] 図形を描画して見せる 使用者がコンピュータにすること ボタンをクリック

More information

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public

I. java.awt.rectangle java.lang.math random Java TM API java.awt Rectangle Rectangle (x,y)... public int x Rectangle X public int y Rectangle Y public 2018 08 03 10:30 12:00 I. IV III II. III. IV. ( a d) V. VI. 70 III 30 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

3D 描画 Step1-1 まず O 原子となる球を 1 つ描画する <WaterPanel.java の作成 > 1.Chemical プロジェクトをインポート 共有フォルダから Chemical.zip をコピーして workspace 内にはりつけ パッケージ エクスプローラで右クリック イン

3D 描画 Step1-1 まず O 原子となる球を 1 つ描画する <WaterPanel.java の作成 > 1.Chemical プロジェクトをインポート 共有フォルダから Chemical.zip をコピーして workspace 内にはりつけ パッケージ エクスプローラで右クリック イン GUI プログラミング第 4 回演習 3DChemical ~ OpenGL(JOGL) による 3D 描画 : 水の化学式モデルを書いてみる ~ 104.45 実際は背景は黒くする 1.eclipse.zip を D: ドライブにコピーし 右クリック ここに解凍 2.workspace を S: ドライブから D: ドライブにコピー 3.eclipse.exe を起動

More information

< F2D82B682E182F182AF82F12E6A7464>

< F2D82B682E182F182AF82F12E6A7464> 3 人のじゃんけん [Java アプレット ] [Java アプリケーション ] 1. はじめに A 君 B 君 C 君の 3 人でじゃんけんを 1 回するときの勝ち負けを考えてみましょう あいこの場合は A 君 B 君 C 君の順に グー グー グー チョキ チョキ チョキ パー パー パー グー チョキ パー グー パー チョキ チョキ グー パー チョキ パー グー パー グー チョキ パー

More information

< F2D82518CC282CC D2E6A7464>

< F2D82518CC282CC D2E6A7464> 2 個のさいころ 1. はじめに [Java アプレット ] [Java アプリケーション ] 2 個のさいころを同時に投げたときの目の出方を考えてみましょう この 2 個のさいころをそれぞれ さいころ Ⅰ さいころ Ⅱ とすると その目の出方は順に 1 1 2 1 3 1 4 1 5 1 6 1 1 2 2 2 3 2 4 2 5 2 6 2 1 3 2 3 3 3 4 3 5 3 6 3 1 4

More information

r14.dvi

r14.dvi 2007 14 2008.1.29 1 1.1 (Ruby Java ) 1 (thread) 1 ( 1 ) main main 1: 1 ( 1 ) CPU CPU 1 while(true) { 0.1 0.1 GUI CPU 1 OS 1.2 Java Java Thread new start()? Thread 0 run() Thread run() run() start() Java

More information

< F2D834F838C A815B A CC>

< F2D834F838C A815B A CC> グレゴリー ライプニッツの公式 [Java アプレット ] [Java アプリケーション ] 1. はじめに 次のグレゴリー ライプニッツの公式を用いて π の近似値を求めてみましょう [ グレゴリー ライプニッツの公式 ] π 4 =1-1 3 + 1 5-1 7 + 1 9-1 + 11 シミュレーションソフト グレゴリー ライプニッツの公式による π の近似 を使って π の近似値が求まる様子を観察してみてください

More information

一方, 物体色 ( 色や光を反射して色刺激を起こすもの, つまり印刷物 ) の表現には, 減法混色 (CMY) が用いられる CMY の C はシアン (Cyn),M はマゼンタ (Mgent),Y はイエロー (Yellow) であり, これらは色の 3 原色と呼ばれるものである なお, 同じシア

一方, 物体色 ( 色や光を反射して色刺激を起こすもの, つまり印刷物 ) の表現には, 減法混色 (CMY) が用いられる CMY の C はシアン (Cyn),M はマゼンタ (Mgent),Y はイエロー (Yellow) であり, これらは色の 3 原色と呼ばれるものである なお, 同じシア 第 4 章デジタル画像の処理 デジタル画像処理の基礎について理解し,Jv によるフィルタリング処理や座標変換のプログラムを作成する 4.1 RGB 表色系と CMY 表色系 TV やコンピュータのディスプレイ, デジタルカメラでの色の表現には, 加法混色 (RGB) が用いられる RGB の R は赤 (Red),G は緑 (Green),B は青 (Blue) であり, これらは光の 3 原色と呼ばれるものである

More information

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2

アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 UML によるソフトウェア設計 Java プログラミング 2 1 アジェンダ 1 グラフィカルなインタフェース GUI(Graphical User Interface) の基礎 2 Swing を利用する Swing の基礎知識 2 1. グラフィカルなインタフェース ウィンドウの作成手順 1. ウィンドウ ( フレーム ) を作成する JFrame frame = new JFrame(); 2.

More information

text_13.dvi

text_13.dvi C 13 2000 7 9 13 Java(8) { Swing(2)(, ) 1 13.1 13 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : 1 13.2 : : : : : : : : : : : : : : : : : : : : : : : : : : : : : : :

More information

ウィンドウの構成ウィンドウはタイトルバーとウィンドウ枠からなります タイトルバーには最小化 / 最大化ボタンや閉じるボタンがあります また ウィンドウはクライアント領域をもちます クライアント領域にはボタンなど GUI 部品が配置されます GUI 部品配置 ( レイアウト ) ウィンドウ ( ステー

ウィンドウの構成ウィンドウはタイトルバーとウィンドウ枠からなります タイトルバーには最小化 / 最大化ボタンや閉じるボタンがあります また ウィンドウはクライアント領域をもちます クライアント領域にはボタンなど GUI 部品が配置されます GUI 部品配置 ( レイアウト ) ウィンドウ ( ステー HCI プログラミング 3 回目ウィンドウを表示してみよう 今日の講義で学ぶ内容 ウィンドウの表示 ウィンドウの最大/ 最小サイズと半透明化 複数のウィンドウと親子関係 ウィンドウの表示 1 ウィンドウを表示してみましょう ウィンドウアプリケーションは Application クラスを拡張して作成します ソースファイル名 :Sample3_1.java // ウィンドウの表示 public class

More information

< F2D825282CC947B909482CC A815B83682E6A>

< F2D825282CC947B909482CC A815B83682E6A> 3 の倍数のトランプカード 1. はじめに [Java アプレット ] [Java アプリケーション ] ここにトランプが 1 組あります ジョーカー 2 枚を除いて 52 枚を使います 3 の倍数は スペード クローバ ダイヤ ハートに それぞれ 3 と 6 と 9 と 12 の 4 枚ずつあるので 4 4=16 枚あります この 52 枚のトランプから 1 枚引いたとき そのカードが 3 の倍数である確率を考えます

More information

教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログ

教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログ 教材ドットコムオリジナル教材 0から始めるiアプリ (4) 0 から始める i アプリ (4) i アプリをプログラミングする際に必要なのは Java というプログラミング言語の基礎知識です 独自の命令や駆使してプログラミングをするわけですが Java というベースになっている言語を知らないでプログラムを記述することはあり得ません 本節では 新規プロジェクトを続けて作る際の注意事項と 簡単な Java

More information

アプレットⅠ

アプレットⅠ アプレット Ⅰ 今回の課題項目 アプレット ( アプレットの作成 コーディング コンパイル 実行 ) アプレット ( グラフィックス表示 文字の描画 グラフィックスの描画 ) アプレット ( 各種グラフィックスメソッド ) 今回の重点項目 アプレット ( アプレットの作成 ) アプレット ( グラフィックス表示 ) アプレット ( グラフィックスメソッド ) -1- アプレット Java はオブジェクト指向型のプログラム言語で有る

More information

piyo0702a.rtfd

piyo0702a.rtfd 21 Rectangle & Rectangle2D 1 ウィンドウに矩形を描く方法を紹介します のに Rectangle2D.Float(float x, float y, float w, float h) があります が Python では double と float との違いを意識する必要はありません void drawrect(int x, int y, int width, int height)

More information

II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K

II Java :30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K II Java 09 2 13 10:30 12:00 I. I IV II. III. IV. ( a d) V. : this==null, T == N A ActionListener C class D actionperformed G getsource I implements K KeyListener J JApplet L addmouselistener M MouseListener

More information

データ構造とアルゴリズム論

データ構造とアルゴリズム論 第 1 章.Java による CG 作成方法 2 学習のねらい 1 先週に続いて Java 言語 (Eclipse 環境における ) を用いて CG( コンピュータグラフィックス ) を作成する方法の基礎を学習する 今回は ( 作成した )CG が自動的に再描画される様にするための処理 ( のプログラミング ) を学習する 今回の学習で Java による CG 作成方法を終了し 次週以降は CG 作成のアルゴリズムの学

More information

IT プロジェクト

IT プロジェクト オブジェクト指向設計による卓球 ゲームの試作 (2) 劉少英 情報科学部コンピュータ科学科 Email:sliu@hosei.ac.jp ホームページ : http://cis.k.hosei.ac.jp/~sliu/ 講義内容 1. 卓球ボールをテーブルの上に移動させる 2. 関連しているクラスにメソッドを加える 3. プログラムの文書化技術 1. 卓球ボールをテーブルの上に 移動させる 8 9

More information

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java //

HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // HCI プログラミング 5 回目ウィンドウに画像を表示してみよう 今日の講義で学ぶ内容 画像の表示 画像のエフェクト 画像のビューポート指定 画像の表示 1 画像を表示してみましょう 画像の表示はクラス ImageView により管理されます ソースファイル名 :Sample5_1.java // 画像の表示 public class Sample5_1 extends Application //

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウの作成をしたい

More information

GUIプログラムⅣ

GUIプログラムⅣ GUI プログラム Ⅳ 画像指定ウィンドウの生成 ファイル名 :awtimage.java import java.awt.*; import java.awt.event.*; public class awtimage extends Frame // コンポーネントクラスの宣言 Button btnbrowse; Label lblcaption7; TextField txtimage; //

More information

< F2D8EA CE909482CC92EA82852E6A7464>

< F2D8EA CE909482CC92EA82852E6A7464> 自然対数の底 e [Java アプレット ] [Java アプリケーション ] 1. はじめに 対数は 17 世紀にネイピアやビュルギといった数学者たちが生み出した関数である 円周率 πと自然対数の底 eとは密接な関係があり どちらも無理数で超越数 ( 整数係数の代数方程式の解にならない実数 ) である 1737 年 オイラーは eが無理数であることを示した 1873 年 フランスの数学者エルミートは

More information

< F2D92DE82E8914B82CC977088D32E6A7464>

< F2D92DE82E8914B82CC977088D32E6A7464> 釣り銭の用意の実験 [Java アプレット ] [Java アプリケーション ] 1. はじめに クラス会などの幹事を務めることはありませんか 幹事になったつもりで考えてみてください 仮に クラス会への参加者人数は 35 人で 会費は 3500 円であるとします また 参加者は 1000 円札 4 枚でお釣りを必要とする人と 1000 円札 3 枚と 500 円玉 1 個でお釣りの要らない人の 2

More information

ガイダンス

ガイダンス プログラムの 1 行目に以下のように自分の入れること // vm12345 杉崎えり子 情報科学 B 第 10 回 GUI 情報科学 B Info2/3 info10 今日のフォルダー作成 Example10_1.java 1 今日やること Windows などで見られるウィンドウを作 成して (GUI プログラム ) そこに実行結 果を表示させる 2 ウィンドウの作成 Java を使用してウィンドウを作成をしたい

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラマー勉強会 1 回 basic.h 補足 [ 修飾子 ] const 付けた変数は初期化以外で値を設定することができなくなる 定数宣言に使う unsigned 付けた変数は符号がなくなり 正の値しか設定できない [ 条件コンパイル ] #ifdef M ここ以前に M がマクロとして定義されていれば ここ以下をコンパイルする #ifndef M ここ以前に M というマクロが定義されていなければ

More information

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy オブジェクト指向プログラミング演習 2010/10/27 演習課題 スレッド ( その 2) 同期処理 結果不正 デッドロック 前回のスレッドの演習では 複数のスレッドを実行し 一つのプログラムの中の違う処理を同時に実行し た ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする )

More information

Java言語 第1回

Java言語 第1回 Java 言 語 第 6 回 Javaアプレット 知 的 情 報 システム 工 学 科 久 保 川 淳 司 kubokawa@me.it-hiroshima.ac.jp アプレットの 概 要 Javaアプレットプログラムの 動 作 Javaアプレット ***.class htmlファイル ***.html ブラウザ(IE Firefox 等 ) Java VM Webサーバ ローカルファイル クライアントコンピュータ

More information

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ

GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ GUI プログラミング第 4 Graph ~ 手書認識と関数グラフ描画 ~ マウスで数式を書いて認識し 関数グラフを描画する < 手書認識とグラフ描画のステップ> ステップ 1_1 フレームの作成 ステップ 1_2 マウスで自由に線を書く ステップ 2-1 手書認識認識結果を標準出力する ステップ 2-2 手書認識認識結果 ( 数式 ) を描画する ステップ 3 認識した数式を元に関数グラフを描画する

More information

I. (i) Java? (A). Foo_Bar (B). G day (C). 999 (D). Golgo13 (ii)? (A). Java public (B). Java (C). Java JavaScript (D). Java C Java C (iii)? (A). Java (

I. (i) Java? (A). Foo_Bar (B). G day (C). 999 (D). Golgo13 (ii)? (A). Java public (B). Java (C). Java JavaScript (D). Java C Java C (iii)? (A). Java ( 2016 07 29 10:30 12:00 I. I V II. III. IV. ( a d) V. VI. 80 100 60 : A ActionListener aa addactionlistener AE ActionEvent K KeyListener ak addkeylistener KE KeyEvent M MouseListener am addmouselistener

More information

Microsoft PowerPoint - swing2.ppt

Microsoft PowerPoint - swing2.ppt Java/Swing について (2) 2005 年 10 月 11 日 海谷治彦 1 Adapterについて TextField TextArea Copy&Paste JList JComboBox JScrollPane レイアウトについて 目次 2 ソースコード 前回より抜粋 public class Listener1 { public static void main(string[]

More information

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys

try catch Exception Java try catch try { } catch ( Exception e ) { } e 16-1 try catch 0 try { int x = 0; int y = 10 / x; } catch ( Exception e ) { Sys try catch Exception Java try catch catch ( Exception e ) { e 16-1 try catch 0 int x = 0; int y = 10 / x; catch ( Exception e ) { System.err.println( " " ); Copyright by Tatsuo Minohara 2004 Rev. C on Dec.

More information

のようにする 上の例では GeneralPath を new するときに コンストラクタに何も指定していないが 直線を表す Line, 四角形を表す Rectangle などを引数に与えてもよい 矢印を作成するメソッドの引数矢印を表す GeneralPath を生成するために getarrowpat

のようにする 上の例では GeneralPath を new するときに コンストラクタに何も指定していないが 直線を表す Line, 四角形を表す Rectangle などを引数に与えてもよい 矢印を作成するメソッドの引数矢印を表す GeneralPath を生成するために getarrowpat 手書認識 グラフ描画 Step3 認識した数式をもとに関数グラフを描画する < 数式の構造解析 > 一般に 1+3 などと文字列で数式をうけとっても コンピュータはそれをそのままで式とは認識しない あくまで 文字列は文字の並びであり そこに数学的な意味は含まれない 数式として計算するためには プログラムによって数式の構造を解析し コンピュータが計算できる形式に変換する必要がある 今回のプログラムでは

More information

基本情報STEP UP演習Java対策

基本情報STEP UP演習Java対策 トレーニング編 1. 予約語 extends アクセスレベル class サブクラス名 extends スーパクラス名 { (1) スーパクラス ( 既存のクラス ) を拡張して, サブクラス ( 新しいクラス ) を定義する場合に extends を利用する (2) extends の後ろには, スーパクラスの名前を一つだけ指定できる (3) サブクラスからインスタンスを生成すると, スーパクラスに定義されたインスタンス変数やメソッドがこのインスタンス内部に引き継がれる

More information

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u i アプリ簡易リファレンス ver0.1.5.1 1.i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.util.random; int ; Random =new Random(); =Math.abs(.nextInt()% ); 0~ まで乱数を発生させます (3) 機種ごとの縦横幅を調べる

More information

参考 - メインスレッドは JVM によって自動的に起動されるため 起動するコードを書く必要 はありません 今まで例題 演習で作成してきたプログラムは全てメインメソッドにて 動作している シングルスレッドです マルチスレッドマルチスレッドとは名前のとおり複数のスレッドと言う意味です マルチスレッドは

参考 - メインスレッドは JVM によって自動的に起動されるため 起動するコードを書く必要 はありません 今まで例題 演習で作成してきたプログラムは全てメインメソッドにて 動作している シングルスレッドです マルチスレッドマルチスレッドとは名前のとおり複数のスレッドと言う意味です マルチスレッドは 01 Android アプリケーションとマルチスレッド Android アプリケーションの中で ユーザーからのキー入力と それに応答した画面の描画 ( 動きのある画面 ) を伴うようなものを作成する場合には 今まで学んだ基礎的なウイジェットの知識に加えて Java の Thread クラスを利用した仕組みが必要不可欠になります この理由を簡単に記すと以下のようになります 今まで記してきた基礎的なアプリケーションは

More information

4 p.2 4 GUI return; public void mousepressed(mouseevent e) { /* 5 */ public void mousereleased(mouseevent e) { /* 5 */ public void mouseentered(mousee

4 p.2 4 GUI return; public void mousepressed(mouseevent e) { /* 5 */ public void mousereleased(mouseevent e) { /* 5 */ public void mouseentered(mousee 4 p.1 4 GUI GUI GUI Java Java try catch C 4.1 4.1.1 4.1.1 MouseTest.java import javax.swing.*; import java.awt.*; import java.awt.event.*; /* 1 */ public class MouseTest extends JPanel implements MouseListener

More information

Java講座

Java講座 ブロック崩し 情報科学部コンピュータ科学科 2 年竹中優 ブロック崩しに必要なクラスを考えよう クラス構造を考える クラスを設計する 実行してみる 当たり判定 実行クラスを完成させる 2 とりあえず ボールとバーとブロックを表すクラスが必要である あとは それらをまとめる実行クラス (Applet クラスのサブクラス ) が必要である クラス名は それぞれ Ball, Bar, Block, Main

More information

Cir

Cir ブロック崩し Step2-1 ボールを描画し アニメーションで動かす ( 壁やパドルで反射するようにする ) < アニメーションの復習 > アニメーションは アプリケーションが指定する間 一定間隔でどんどん画像をおきかえていくもの Swing では Timer によって一定間隔でイベントを発生させ イベント処理をするメソッド ( 関数 ) に画像を描画しなおす処理を記述すると アニメーションになる

More information