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

ガイダンス

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回 課題作成③

例:

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

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

プログラム

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

(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オ ブジェクトを作成するため

mygを使って描画 が可能になる

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メ ソッドを呼び出す repaint(); try { Thread.sleep(10); } Catch(Exception e) { } おまじない① おまじない② paintComponent()メソッド を呼び出す ④ ⑤ ⑥ ⑦ ⑧ ⑨

ヒント

⑥ボタンとアニメ

(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 {

コンストラクタ

public Button(){

JPanel mypnl;

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 void 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{

コンストラクタ

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メ ソッドを呼び出す repaint(); try { Thread.sleep(10); } Catch(Exception e) { } おまじない① おまじない② paintComponent()メソッド を呼び出す ③ ④ ⑤ ⑥ ⑦ ⑧

復習

参照

関連したドキュメント

プログラムに参加したどの生徒も週末になると大

「課題を解決し,目標達成のために自分たちで考

この課題のパート 2 では、 Packet Tracer のシミュレーション モードを使用して、ローカル

目標を、子どもと教師のオリエンテーションでいくつかの文節に分け」、学習課題としている。例

②防災協定の締結促進 ■課題

○水環境課長

物質工学課程 ⚕名 電気電子応用工学課程 ⚓名 情報工学課程 ⚕名 知能・機械工学課程

事例1 平成 23 年度採択...