• 検索結果がありません。

ガイダンス

N/A
N/A
Protected

Academic year: 2021

シェア "ガイダンス"

Copied!
14
0
0

読み込み中.... (全文を見る)

全文

(1)

情報科学B

第14回 課題作成③

1 情報科学B 第14回 課題作成③ 情報科学B Info2/3・・・ Report14_1.java info14 ←今日のフォルダー作成

プログラムの1行目に自分の名前を入れること

// vm12345 杉崎 えり子

(2)

アニメーションはオリジナ ルのものを作成すること

課題

3

(提出)

2 情報科学B 第14回 課題作成③

ボタンとアニメーション(第13回)を組み合わせて、オリ

ジナルのウィンドウを作成する。

第15回授業終了時間までにアップロードを

完了させておくこと

教科書、資料、過去 のプログラムを見な がらでOK

Report14.java

MyPanel14.java

(3)

課題

3

(提出)

3 情報科学B 第14回 課題作成③

例:

①乱数を使用して占いのプログラム。ボタンをクリッ

クするとアニメーションの後に結果を表示

教科書、資料、過去 のプログラムを見な がらでOK Report14.java MyPanel14.java アニメーションはオリジナ ルのものを作成すること

(4)

課題

3

(提出)

4 情報科学B 第14回 課題作成③ 教科書、資料、過去 のプログラムを見な がらでOK Report14.java MyPanel14_1.java MyPanel14_2.java アニメーションはオリジナ ルのものを作成すること アニメーションはオリジナ ルのものを作成すること

例:

② ボタン1をクリックするとアニメーション1が、ボタ

ン2をクリックするとアニメーション2が表示される

プログラム

(5)

public class Button extends JFrame implements ActionListener {

コンストラクタ

public Button(){

addActionListener(this);

}

メイン

public static void main(String[] args){

}

イベント

public void actionPerformed(ActionEvent e) {

}

}

フレーム作成 メイン ボタンクリック時の処理

⑥ボタンとアニメ

ヒント

mypnl = new MyPanel();

MyPanelクラスでmypnlオ ブジェクトを作成するため

Button myframe = new Button(); anime パネル 部品 フレーム

mainを含むファイル

① ② ③

MyPanel mypnl;

(6)

class MyPanel extends JPanel implements Runnable {

コンストラクタ

public MyPanel() {

}

ペイント

public void paintComponent(Graphics myg) {

}

}

図形描画

書き換え

public void run() {

}

mainを含まない残りの部分

Runnableインタ フェースを実装

runメソッドの本体を定義 Thread refresh = new Thread(this);

refresh.start(); Threadクラスのオブジェ クトを生成 スレッドのrunメ ソッドを呼び出す While(true){ repaint(); try { Thread.sleep(10); } Catch(Exception e) { } } おまじない① おまじない② paintComponent()メソッド を呼び出す ④ ⑤ ⑥ ⑦ ⑧ ⑨

ヒント

⑥ボタンとアニメ

10msec待つ ⑨

(7)

7

グラフィック

情報科学B 第11回 グラフィック

(8)

復習

JFrame: フレームウィンドウを作成。

JButton: ボタンを作成。

JLabel: 文字列を表示。

JPanel: パネルを作成。パネルにコンポーネント

(ボタン、ラベルなど)を貼り付けられる。

ImageIcon: 画像ファイルをアイコンとして描画する。

(9)

public class Window extends JFrame{

コンストラクタ

public Window() {

}

メイン

public static void main(String[] args){

}

}

フレーム作成 メイン

復習

①ウィンドウの作成

Window myframe = new Window();

JFrameクラスを継承 してWindowクラス を作成(更に機能を 追加するため) myframeオブジェクトを作成したらコン ストラクタ(Window)を実施する JFrameクラスを拡張して Windowクラスを作成 ① ② ③

(10)

public class Button extends JFrame implements ActionListener {

コンストラクタ

public Button(){

addActionListener(this);

}

メイン

public static void main(String[] args){

}

イベント

public void actionPerformed(ActionEvent e) {

}

}

フレーム作成 メイン ボタンクリック時の処理

復習

② ボタンの作成

Button myframe = new Button(); ボタンクリック処理 を行うために、リス ナーインタフェース を実装 myframeオブジェクトを作成したらコン ストラクタ(Button)を実施する クリックされたときの処理 ① ② ③ ④ ⑤

(11)

public class Button extends JFrame implements ActionListener {

JPanel mypnl;

コンストラクタ public Button(){ mypnl=new JPanel(); addActionListener(this); }

メイン

public static void main(String[] args){

}

イベント

public void actionPerformed(ActionEvent e) {

}

}

フレーム作成 メイン ボタンクリック時の処理 図形の描画

③ ボタンクリックでグラフィックス表示

復習

Graphics myg=mypnl.getGraphics();

JPanelクラスでmypnlオブ ジェクトを作成 mygを使って描画 が可能になる

Button myframe = new Button(); draw パネル 部品 フレーム ① ③ ④ ⑤ ⑥

(12)

public class Gra extends JFrame{ MyPanel mypnl; コンストラクタ public Gra() { mypnl=new MyPanel(); setVisible(true); } ペイント

public class MyPanel extends JPanel {

public void paintComponent(Graphics myg){ super.paintComponent(myg); } } } フレーム作成 図形描画 メイン

public static void main(String[] args){ } メイン

④ グラフィックス表示

復習

JPanelクラスに手を加えて MyPanelクラスを作成。 コンストラクタが書いてないの でJPanelのコンストラクタを実施 自作MyPanelクラスで mypnlオブジェクトを作成

Gra myframe = new Gra();

パネル 図形 フレーム paintComponent()を呼び出し JPanel(親)のpaintComponent を実施後、以下の自作部分を 実施 ① ② ③ ④ ⑤

(13)

public class Anime extends JFrame{

MyPanel mypnl;

コンストラクタ

public Anime() {

}

メイン

public static void main(String[] args){

}

}

パネル作成 メイン

⑤ アニメーションの作成

復習

mypnl = new MyPanel();

mainを含むファイル

JFrameクラスを拡張して Animeクラスを作成

Anime myframe = new Anime(); myframeオブジェクトを作成したらコン ストラクタ(Anime)を実施する

ファイルを分割

① ②

(14)

class MyPanel extends JPanel implements Runnable {

コンストラクタ

public MyPanel() {

}

ペイント

public void paintComponent(Graphics myg) {

}

}

図形描画

書き換え

public void run()

{

}

⑤ アニメーションの作成

復習

mainを含まない残りの部分

Runnableインタ フェースを実装 runメソッドの本体を定義 Thread refresh = new Thread(this);

refresh.start(); Threadクラスのオブジェ クトを生成 スレッドのrunメ ソッドを呼び出す while(true) { repaint(); try { Thread.sleep(10); } catch(Exception e) { } } おまじない① おまじない② paintComponent()メソッドを呼び出す ③ ④ ⑤ ⑥ ⑦ ⑧ 10msec待つ ⑧

参照

関連したドキュメント

【現状と課題】

  総合支援センター   スポーツ科学・健康科学教育プログラム室   ライティングセンター

市民社会セクターの可能性 110年ぶりの大改革の成果と課題 岡本仁宏法学部教授共編著 関西学院大学出版会

話題提供者: 河﨑佳子 神戸大学大学院 人間発達環境学研究科 話題提供者: 酒井邦嘉# 東京大学大学院 総合文化研究科 話題提供者: 武居渡 金沢大学

具体的な取組の 状況とその効果 に対する評価.

 大学図書館では、教育・研究・学習をサポートする図書・資料の提供に加えて、この数年にわ

  総合支援センター   スポーツ科学・健康科学教育プログラム室   ライティングセンター