Java 2 - Lesson01
|
|
|
- えの つちた
- 9 years ago
- Views:
Transcription
1 第 3 回 複雑なレイアウトのイベント処理 画像 データの読込み テーブルの使用 キーポイント レイアウトについて 前回までのレイアウト レイアウトの補足機能 固定座標を用いたレイアウト Grid Layout CardLayout について Card Layout Card Layout による複数ページ表示 ファイルの読み込み JFileChooser クラス java.awt.filedialog 画像データの読み込みと表示 テーブルの利用 JTable クラス テーブルデータの初期設定 Vector 型データの使用 1
2 前回までに学んだ GUI のレイアウト BorderLayout FlowLayout などの標準的なレイアウトを学んだ BorderLayout FlowLayout 今回は 更に複雑なデザインの GUI を作るためのレイアウト またそれに伴うイベント処理について学習していく 2
3 フレームのサイズを固定する 基本的なレイアウトの補足 setresizable() メソッドを用いて 引数に false を与えることでフレームのサイズを固定する public class Practice03 extends JFrame implements ActionListener { JPanel jp1; public static void main(string[] args){ new Practice03("Teaching3 Test Layout"); Practice03(String title){ jp1 = new JPanel(); jp1.add(new JLabel( "This is a JPanel with default layout in page 1")); jp1.add(new JButton("I'm a button")); jp1.add(new JLabel("I'm a label")); add(jp1); setdefaultcloseoperation(jframe.exit_on_close); setsize(400, 300); setresizable(false); settitle(title); setvisible(true); setresizable(falese) でサイズが固定される 3
4 基本的なレイアウトの補足 (2) BorderLayout の記述の仕方 BorderLayout の位置指定には絶対指定と相対指定がある どちらを使っても良いが 混在できない JPanel jp1,jp2; Practice03(String title){ jp2 = new JPanel(new BorderLayout()); jp2.add(new JLabel( This is a JPanel with BorderLayout in page 2"), "Center"); jp2.add(new JButton("North"), "North"); jp2.add(new JButton("South"), "South"); jp2.add(new JButton("West"), "West"); jp2.add(new JButton("East"), "East"); 絶対指定 相対指定 位置 BorderLayout.CENTER BorderLayout.CENTER 中央 BorderLayout.NORTH BorderLayout.PAGE_START 上 BorderLayout.SOUTH BorderLayout.PAGE_END 下 BorderLayout.WEST BorderLayout.LINE_START 左 BorderLayout.EAST BorderLayout.LINE_END 右 // 以下のように記述することもできる //jp2.add(new JButton("North"), BorderLayout.PAGE_START); //jp2.add(new JButton("South"), BorderLayout.PAGE_END); //jp2.add(new JButton("West"), BorderLayout.LINE_START); //jp2.add(new JButton("East"), BorderLayout.LINE_END); add(jp2); //add(jp1); 4
5 レイアウトマネージャを用いないレイアウト レイアウトマネージャを無効にする レイアウトマネージャを無効にした場合は 固定座標によってコンポーネントを配置する Java アプリケーションは色々な環境で実行される可能性があるため 基本的にはレイアウトマネージャの使用が推奨されるが 座標指定でアプリケーションを作成した場合などは固定座標を用いる JPanel jp1,jp2,jp3; Practice03(String title){ 60 (10,10,300,20) jp3 = new JPanel(); jp3.setlayout(null); (10,60,150,20) JLabel jlabel = new JLabel( "This is a JPanel without layout in page 3"); jlabel.setbounds(10, 10, 300, 20); jp3.add(jlabel); JButton jbutton1 = new JButton("I'm a button"); jbutton1.setbounds(10, 35, 150, 20); jp3.add(jbutton1); JButton jbutton2 = new JButton("I'm another button"); jbutton2.setbounds(10, 60, 200, 20); jp3.add(jbutton2); 200 (10,110,200,20) 座標サイズ add(jp3); //add(jp2); 5
6 GridLayout の作成 GridLayout クラスを用いて画面を作成する GridLayoutは対象となる領域全体を指定した行数と列数に分割する 配置されたコンポーネントは全て同じサイズに調節される import java.awt.gridlayout; JPanel jp1,jp2,jp3,jp4; Practice03(String title){ // 行と列数を指定 ( 行, 列 ) -> (2x2) // 指定がない場合はコンポーネントが横に配置される jp4 = new JPanel(new GridLayout(2, 2)); 行 2 jp4.add(new JButton("This is")); jp4.add(new JButton("a JPanel with")); jp4.add(new JButton("2*2 GridLayout")); jp4.add(new JButton("in page 4")); add(jp4); //add(jp3); 列 2 6
7 CardLayout について CardLayout クラスは複数コンポーネントを切り替えて表示できるレイアウトマネージャー それぞれのカードにコンポーネントを登録した複数のカードを内部的に保持し 表示するカードを切り替えることで表示するコンポーネントを切り替える CardLayout クラスの持つメソッドは以下の通り next() next() next() previous() previous() previous() first() last() first() - コンテナの最初のカードに切り替える last() - コンテナの最後のカードに切り替える next() - 指定されたコンテナの次のカードに切り替える previous() - 指定されたコンテナの前のカードに切り替える 7
8 CardLayout について (2) レイアウトの動作の確認のために簡単なサンプルプログラムを作る import javax.swing.*; import java.awt.cardlayout; import java.awt.event.*; public class CardLayoutTest extends JFrame implements ActionListener{ JPanel jpmain; CardLayout cl; public static void main(string[] args){ CardLayoutTest frame = new CardLayoutTest2(); CardLayoutTest(){ // Card1 JPanel c1 = new JPanel(); c1.add(new JLabel("card1")); c1.add(new JButton("button")); // Card2 JPanel c2 = new JPanel(); c2.add(new JLabel("card2")); c2.add(new JTextField("", 10)); // Card3 JPanel c3 = new JPanel(); c3.add(new JLabel("card3")); c3.add(new JCheckBox("checkbox1")); c3.add(new JCheckBox("checkbox2")); jpmain = new JPanel(); cl= new CardLayout(); // パネルに CardLayout を設定する jpmain.setlayout(cl); // 作成したカードをパネルに設定する // この時点では card1 のみ表示される jpmain.add(c1, "card1"); jpmain.add(c2, "card2"); jpmain.add(c3, "card3"); add(jpmain,borderlayout.center); setdefaultcloseoperation(jframe.exit_on_close) setsize(300,200); settitle("cardlayouttest"); setvisible(true); 8
9 CardLayout について (3) カード移動用のボタンとイベントの追加を行う CardLayoutTest(){ // カード移動用ボタン JButton firstbtn = new JButton("First"); firstbtn.addactionlistener(this); firstbtn.setactioncommand("first"); JButton prevbtn = new JButton("Prev"); prevbtn.addactionlistener(this); prevbtn.setactioncommand("prev"); JButton nextbtn = new JButton("Next"); nextbtn.addactionlistener(this); nextbtn.setactioncommand("next"); ( イベント処理 ) public void actionperformed(actionevent e) { String cmd = e.getactioncommand(); if (cmd.equals("first")) { cl.first(jp); else if (cmd.equals("last")) { cl.last(jp); else if (cmd.equals("next")) { cl.next(jp); else if (cmd.equals("prev")) { cl.previous(jp); JButton lastbtn = new JButton("Last"); lastbtn.addactionlistener(this); lastbtn.setactioncommand("last"); JPanel btnp = new JPanel(); btnp.add(firstbtn); btnp.add(prevbtn); btnp.add(nextbtn); btnp.add(lastbtn); add(btnp, BorderLayout.SOUTH); プログラムを実行して動作を確認して下さい 9
10 CardLayout について (4) 先ほど作ったレイアウトを用いて画面を作成する public class CardLayoutTest 2 extends JFrame implements ActionListener { JPanel jpmain; CardLayout cl; JPanel[] jps; JButton jb; public static void main(string[] args) { new CardLayoutTest 2(" CardLayoutTest 2"); public CardLayoutTest2(String title){ cl = new CardLayout(); jpmain = new JPanel(); jpmain.setlayout(cl); add(jpmain, "Center"); // 各ページ用のパネルを配列に置きなおす jps = new JPanel[4]; // 画面下部のボタンは CardLayoutTest() で作成した // ボタン用の JPanel を使用 JPanel btnp = new JPanel(); btnp.add(firstbtn); add(btnp, BorderLayout.SOUTH); settitle(title); setsize(400,300); setlocation(400,300); setresizable(false); setdefaultcloseoperation(jframe.exit_on_close); setvisible(true); // 今回のレイアウトの演習 jp1~jp4 で作成したパネルを // そのまま使用して下さい jps[0] = new JPanel(); jps[0].add(new JLabel("This is a JPanel with default layout in page 1")); jps[0].add(new JButton("I'm a button")); jps[0].add(new JLabel("I'm a label")); // メインのパネルに add する際に カードの名前をつける jpmain.add(jps[0], "page1"); // 同じように jp2~jp4 の部分も作成 // ( イベント処理 ) public void actionperformed(actionevent e) { String cmd = e.getactioncommand(); // イベント処理部も CardLayoutTest() で作成した // ボタン用のイベント処理を記述 10
11 CardLayout について (5) 実行して画面の動作を確認 next Prev jps[0] First jps[1] jps[2] jps[3] Last 11
12 ファイルの読み込み (1) JFileChooser クラスを用いたファイルの読み込み 画面上でファイル名を選択できるダイアログを表示する場合に利用する public class JFileChooserTest extends JFrame implements ActionListener { JLabel label; public static void main(string[] args) { JFileChooserTest frame = new JFileChooserTest("JFileChooserTest"); JFileChooserTest(String title) { JButton button = new JButton("Select File"); button.addactionlistener(this); JPanel btnpanel = new JPanel(); btnpanel.add(button); label = new JLabel(); JPanel lbpanel = new JPanel(); lbpanel.add(label); add(lbpanel, BorderLayout.CENTER); add(btnpanel, BorderLayout.PAGE_END); public void actionperformed(actionevent e) { JFileChooser filechooser = new JFileChooser(); int selected = filechooser.showopendialog(this); if (selected == JFileChooser.APPROVE_OPTION) { File file = filechooser.getselectedfile(); label.settext(file.getname()); ダイアログを開くボタンをクリックし 動作を確認して下さいファイルを選択し 画面内のラベルに選択した情報が適用されるのを確認して下さい setdefaultcloseoperation(jframe.exit_on_close); setsize(300, 200); settitle(title); setvisible(true); 12
13 ファイルの読み込み (2) JFileChooser クラスを用いたファイルの読み込み 画面上でファイル名を選択できるダイアログを表示する場合に利用する public void actionperformed(actionevent e) { JFileChooser filechooser = new JFileChooser(); // ダイアログを開く // 引数に指定した文字列をボタンに使用できる -> 実行 int selected = filechooser.showopendialog(this, 実行 ); // 選択された操作に対応するイベントを選択する if (selected == JFileChooser.APPROVE_OPTION) { File file = filechooser.getselectedfile(); label.settext(file.getname()); else if (selected ==JFileChooser.CANCEL_OPTION){ label.settext(" キャンセルされました "); else if (selected ==JFileChooser.ERROR_OPTION){ label.settext(" エラー又は取消しがありました "); 定義値値ボタンの種類 JFileChooser.APPROV E_OPTION 0 引数で指定した文字列が表示されたボタンが選択された場合 JFileChooser.CANCEL _OPTION JFileCHooser.ERROR_ OPTION 1 取消し ボタンが選択された場合 -1 エラー発生時 13
14 ファイルの読み込み (3) java.awt.filedialog を使ってファイルの読み込みをする // 画面のデザインは先ほどのプログラムを利用して下さい public void actionperformed(actionevent e) { // FileDialog を開く // 第一引数 : ターゲットとなるフレーム // 第二引数 : ダイアログのタイトル // ( 第三引数 : ダイアログのモード ) FileDialog fd = new FileDialog(this, "File Select"); // FileDialog を表示する fd.setvisible(true); 適当なファイルを選択して 画面の表示を確認して下さい // getdirectory() : 選択したファイルのパスを取得 // getfile() : 選択したファイルの名前を取得 String fullpath = fd.getdirectory() + fd.getfile(); label.settext(fullpath); 14
15 ファイルの読み込み (4) java.awt.canvas を継承した MyCanvas クラスを用いて画像の表示をする public class PictureViewer extends JFrame implements ActionListener { JPanel jp; MyCanvas mc; String fpath,fname; JButton JBselect; FileDialog fd_load; //main メソッド省略 public PictureViewer(String title) { settitle(title); jp = new JPanel(); JBselect = new JButton("Select a picture"); JBselect.addActionListener(this); jp.add(jbselect); // 画像表示用に MyCanvas オブジェクトを作成 mc = new MyCanvas(); add(jp, "North"); add(mc, "Center"); setsize(360, 360); setlocation(400, 200); // ウィンドウが閉じられた時の処理 addwindowlistener(new WindowAdapter(){ public void windowclosing(windowevent e) { System.exit(0); ); setvisible(true); fd_load = new FileDialog(this, "Open file", FileDialog.LOAD); public void actionperformed(actionevent arg0) { fd_load.setvisible(true); fpath = fd_load.getdirectory(); fname = fd_load.getfile(); if((fpath!= null) && (fname!= null)) { // display() メソッドに指定したファイルのパスを持った // File オブジェクトを渡す this.display(new File(fpath + fname)); public void display(file f) { try{ // 読み込んだファイルの画像データをセット BufferedImage bi = ImageIO.read(f); mc.setimage(bi); this.settitle("pictureviewer - [" + f.getname() + "]"); catch (Exception e) { e.printstacktrace(); mc.repaint(); MyCanvas クラス MyCanvas.java 15
16 ファイルの読み込み (5) java.awt.canvas を継承した MyCanvas クラスを用いて画像の表示をする 適当な画像ファイルを選択して動作を確認して下さい ( 余裕のある人は MyCanvas クラスの内部の動作を確認してみて下さい ) 16
17 テーブルの利用 JTable クラスを利用して デザインにテーブルを利用する JTableクラスは表形式の形でデータを表示する際に使用する データベースのデータのように扱うために 同じ列のデータはデータ形式を統一する必要がある public class TableViewer extends JFrame { // テーブルデータ String[][] tdata = { {" りんご ","150","7500","50", {" みかん ","50","4000","20", {" ぶどう ","200","8000","60", {" バナナ ","250","15000","40" ; // テーブルの要素名 String[] columnnames = {" 商品 ", " 価格 ( 円 )", " 売上 ( 円 )", " 在庫 ( 個 )"; public static void main(string[] args){ new TableViewer(" Teaching 5 Table Viewer "); public TableViewer(String title){ JPanel p = new JPanel(); // テーブルの作成 JTable table = new JTable(tdata, columnnames); // サイズの自動設定 table.setautoresizemode(jtable.auto_resize_off); // JScrollPane オブジェクト上にテーブルを配置 JScrollPane sp = new JScrollPane(table); sp.setpreferredsize(new Dimension(300, 100)); p.add(sp); JTable table2 = new JTable(4,4); table2.setautoresizemode(jtable.auto_resize_off); JScrollPane sp2 = new JScrollPane(table2); sp2.setpreferredsize(new Dimension(300, 100)); p.add(sp2); add(p, BorderLayout.CENTER); settitle(title); setsize(400,250); setdefaultcloseoperation(jframe.exit_on_close); setvisible(true); 設定したテーブルのデータは後から編集もできる 17
18 初期データの設定 テーブルの利用 (2) テーブルのデータからJTableオブジェクトを作成すると データを後から追加することができない DefaultTableModelクラスのオブジェクトを用いることで それが可能となる import javax.swing.table.defaulttablemodel; public TableViewer(String title){ JPanel p = new JPanel(); // 引数には テーブルのデータを与える DefaultTableModel tm = new DefaultTableModel(tdata,columnNames); // DefaultTableModel のオブジェクトを引数として与える JTable table = new JTable(tm); //JTable table = new JTable(tdata, columnnames); table.setautoresizemode(jtable.auto_resize_off); JScrollPane sp = new JScrollPane(table); sp.setpreferredsize(new Dimension(300, 100)); p.add(sp); 表示は変わらない 18
19 テーブルのデータの扱い テーブルの利用 (3) 前項では配列を用いてテーブルを作成した 配列ではなく Vector 型のオブジェクトを用いてテーブルを作成することもできる public TableViewer(String title){ Vector person1 = new Vector(); person1.add("john"); person1.add("male"); person1.add("20"); Vector person2 = new Vector(); person2.add("mary"); person2.add("female"); person2.add("18"); Vector data = new Vector(); data.add(person1); data.add(person2); Vector columnnames = new Vector(); columnnames.add("name"); columnnames.add("sex"); columnnames.add("age"); DefaultTableModel DTM = new DefaultTableModel(data, columnnames); JTable table = new JTable(DTM); table.setautoresizemode(jtable.auto_resize_off); JScrollPane pane = new JScrollPane(); pane.setviewportview(table); JTable のコンストラクタ JTable() - デフォルトの JTable を構築 JTable(int numrows, int numcolumns) - numrows numcolumns で JTable を構築 JTable(Object[][] rowdata, Object[] columnnames) - 2 次元配列 rowdata の値をデータ columnnames を列名とする JTable を構築 JTable(TableModel dm) - データモデル dm を基にした JTable を構築 JTable(TableModel dm, TableColumnModel cm) - データモデル 列モデルを基とした JTable を構築 JTable(TableModel dm, TableColumnModel cm, ListSelectionModel sm) - データモデル 列モデル 選択モデルを基とした JTable を構築 JTable(Vector rowdata, Vector columnnames) - Vector 型の rowdata columnnames を基として JTable を構築 p.add(pane); add(p, BorderLayout.CENTER); 19
20 テーブルデータを追加する テーブルの利用 (4) addrow() メソッドを使ってテーブルにデータを追加することができる 以下の記述を付け足して実行し 動作を確認して下さい public TableViewer(String title){ // テーブルにデータを与えるための引数として // Vector 型のオブジェクトを作成する Vector tabledata = new Vector(); tabledata.add("hoseitaro"); tabledata.add("male"); tabledata.add("24"); // DefaultTableModel クラスの addrow() クラスを使って // データを後から追加することができる DTM.addRow(tabledata); DefaultTableModel クラスの addrow() メソッドを使って後から追加したデータが 実際に追加されていることを確認することができる このようにして 初期値を与えたテーブルに後からデータを追加することができる 20
目 次 Java GUI 3 1 概要 クラス構成 ソースコード例 課題...7 i
Java GUI 3 Java GUI 3 - サンプルプログラム (1) - 2011-09-25 Version 1.00 K. Yanai 目 次 Java GUI 3 1 概要...1 2 クラス構成...2 3 ソースコード例...3 4 課題...7 i 1 概要まずは簡単なサンプルプログラムをみながら Java GUI の基本的なことを学びましょう 本サンプルは 図に示すようなひとつのメイン画面を使用します
public class Kadai _02 { public static void main(string[] args) { MyFrame frame = new MyFrame("Kadai _02"); (2) フレームのクラス名は MyFrame とし 以下
オブジェクト指向プログラミング演習課題 20071128 以下のような GUI 画面を表示するプログラムを完成させなさい 前回演習で作成したプログラムにイベント処理を追加します 注意 : ファイル名が同じものがあるので 課題毎にディレクトリーを分ける等してください 課題 20071128_01 講義資料内で紹介したイベント処理の例 2 を作成し 動作を確認せよ (1) コントロールクラス (main
Java言語 第1回
Java 言語 第 11 回ウインドウ型アプリケーション (2) 知的情報システム工学科 久保川淳司 [email protected] メニュー (1) メニューを組み込むときには,MenuBar オブジェクトに Menu オブジェクトを登録し, その Menu オブジェクトに MenuItem オブジェクトを登録する 2 つの Menu オブジェクト File New
10/31 Java AWTの基本構造(Frameクラスの継承) 演習課題資料
10/28 Java AWT の基本構造 (Frame クラスの継承 ) 演習課題資料以下のプログラムを完成せよ 共通課題 1.Frame を生成するプログラム // Frame クラスを継承して 終了ボタンのみを定義した クラスの定義 class WhiteWindow 1 { // Frame クラスの継承をする (Frame クラスの拡張 ) WhiteWindow (String title){
Java言語 第1回
Java 言語 第 10 回ウインドウ型アプリケーション (1) 知的情報システム工学科 久保川淳司 [email protected] 前回の課題 (1) ボーダーレイアウト, グリッドレイアウト, パネルを使用して, 電卓風のボタンを実現する BorderLayout で NORTH, CENTER, SOUTH に分割 NORTHにはテキストフィールドを設定 CENTERにはパネルを使って9つのボタンを設定
2 static final int DO NOTHING ON CLOSE static final int HIDE ON CLOSE static final int DISPOSE ON CLOSE static final int EXIT ON CLOSE void setvisible
12 2013 7 2 12.1 GUI........................... 12 1 12.2............................... 12 4 12.3..................................... 12 7 12.4....................................... 12 9 12.5 : FreeCellPanel.java............................
自宅でJava言語の開発環境を作る方法
ViralBanner の作成方法 2010 年 1 月 31 日更新 あいあいスクール代表 畠茂雄 ( はたけしげお ) もくじ 今回作成するツールの紹介... 3 ソースコードの作成... 5 (1)ViralBanner.html のソースコード... 6 (2)ViralBanner.java のソースコード... 7 (3) 参考 : レイアウトマネージャについて... 10-2 今回作成するツールの紹介
Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem
Java Object MenuComponent MenuBar MenuItem Menu CheckboxMenuItem 2 MenuComponent MenuComponent setfont() void setfont(font f) MenuBar MenuBar MenuBar() MenuBar add() Menu add(menu m) Menu Menu Menu String
次の演習課題(1),(2)のプログラムを完成させよ
次の演習課題 (1),(2) のプログラムを作成せよ. 課題 (1) ボタン押下時の処理を追加し以下の実行結果となるようにプログラムを作成しなさい ( ボタン押下時の処理 ) import java.lang.*; class Figure extends JFrame implements ActionListener{ JPanel panel; JScrollPane scroll; JTextArea
PowerPoint Presentation
ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:
Java 2 - Lesson01
第 2 回 GUI コンポーネントのイベント処理 GUI Component Event Handling キーポイント イベント イベントリスナー イベント処理とは何か? ActionEventとActionListenerについて ItemEventとItemListenerについて TextEventとTextListenerについて KeyEventとKeyListenerについて AdjustmentEventとadjustmentListenerについて
IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap
1-1 1-2 IE6 2 BMI 3-1 3-2 4 5 chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chapter8 : 13-1 13-2 14 15 PersonTest.java KazuateGame.java
Assignment_.java /////////////////////////////////////////////////////////////////////// // 課題 星の画像がマウスカーソルを追従するコードを作成しなさい 次 ///////////////////
Assignment_.java 0 0 0 0 0 /////////////////////////////////////////////////////////// // 課題 次のようにマウスのカーソルに同期しメッセージを /////////////////////////////////////////////////////////// class Assignment_ extends
PowerPoint プレゼンテーション
オブジェクト指向 プログラミング演習 第 4 回継承 オーバーライド ポリモルフィズム 今日のお題 継承 オーバーライド ポリモルフィズム 継承 (inherit) あるクラス c のサブクラス s を定義する : このとき s は c を継承していると言う 何かの下位概念を表すクラスは その上位概念を表すクラスの属性や機能を ( 基本的には ) 使える 継承の例 大学生 長崎県立大学の学生 大学生を継承する概念
Java言語 第1回
Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 [email protected] 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public
< F2D F B834E2E6A7464>
ランダムウォーク [Java アプレット ] [Java アプレリケーョン ] 1. はじめに 酔っぱらいは前後左右見境なくふらつきます 酔っぱらいは目的地にたどり着こうと歩き回っているうちに何度も同じところに戻って来てしまったりするものです 今 酔っぱらいが数直線上の原点にいるとします 原点を出発して30 回ふらつくとき 30 回目に酔っぱらいがいる位置は 出発点である原点からどれくらい離れてしまっているのでしょうか
< F2D82518E9F8AD CC95BD8D7388DA93AE2E6A7464>
2 次関数のグラフの平行移動 [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフとy=a(x-b) +c のグラフは 位置は違うけれど 形も広がりも全く同じです 2 2 y=a(x-b) +c のグラフは y=ax のグラフをx 軸方向に ( 右方向に ) +b y 軸方向に ( 上方向に ) +c だけ平行移動したものです 2 シミュレーションソフト
< F2D825282CC947B909482CC A815B83682E6A>
3 の倍数のトランプカード 1. はじめに [Java アプレット ] [Java アプリケーション ] ここにトランプが 1 組あります ジョーカー 2 枚を除いて 52 枚を使います 3 の倍数は スペード クローバ ダイヤ ハートに それぞれ 3 と 6 と 9 と 12 の 4 枚ずつあるので 4 4=16 枚あります この 52 枚のトランプから 1 枚引いたとき そのカードが 3 の倍数である確率を考えます
Java 2 - Lesson01
Welcome to プログラミング演習 2 Instructor: Jianhua MA TA: 池邉曜 and 李漠 (LI Mo) Course HP URL: https://cis.k.hosei.ac.jp/~jianhua/course/j2/ 1 第 1 回 GUI (Graphics User Interface) 基礎とコンポーネントの作成 キーポイント GUI コンポーネント
< 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
< F2D82518E9F8AD CC834F CC8CFC82AB82C68D4C>
2 次関数のグラフの向きと広がり [Java アプレット ] [Java アプリケーション ] 1. はじめに 2 2 y=ax のグラフについて x の係数 aが正のときと負のときでは グラフにどのような違いがあるでしょうか 2 2 y=ax のグラフについて x の係数 aが正のとき 係数 aの値が大きくなるにつれて グラフの広がりはどうなるでしょうか 2 2 y=ax のグラフについて x の係数
< F2D A839382CC906A2E6A7464>
ビュホンの針 1. はじめに [Java アプレット ] [Java アプリケーション ] ビュホン ( Buffon 1707-1788) は 針を投げて円周率 πを求めることを考えました 平面上に 幅 2aの間隔で 平行線を無数に引いておきます この平面上に長さ2bの針を落とすと この針が平行線と交わる確立 pは p=(2b) (aπ) 1 となります ただし b
第1章 ビジュアルプログラミング入門
第 10 章補足 -Java プログラムを一から記述してみようー 学習内容とねらい これまで本テキストで扱ってきたのは主に Windows アプリケーション (Windows 上のボタンクリック等による動作するプログラム ) でした ですから 皆は Eclipse を用いて Windows アプリケーションを作成する方法には習熟したはずです 皆も経験した通り Eclipse( およびそこにプラグインされている
オブジェクト指向プログラミング・同演習 5月21日演習課題
オブジェクト指向プログラミング 同演習 5 月 21 日演習課題 問題 1 配列の例外処理例外が発生する可能性のある処理を try で囲み その後に catch で例外を捕捉します 例外処理の終了処理として finally が行われます これは書かなくて自動的に行われます 提出課題 1 (Kadai052301.java) 以下のプログラムは例外処理をしていない ArrayIndexOutOfBoundsException
HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなど
HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなどを設定できます ソースファイル名 :Sample8_1.java // HP よりインポート文をここへ貼り付けてください
Android Layout SDK プログラミング マニュアル
プログラミングマニュアル Version 1.3.0 用 更新履歴 年月日 バージョン 履歴 2014.09.08 1.2.0.0 新規 (Layout Utilities ユーザーズ ガイド ) 2016.08.16 1.3.0.0 モバイル端末用レイアウトで直線部品と矩形部品に対応 モバイル端末用レイアウトファイルを CLFX から XML へ変更 Layout Print Engine から
Java講座
~ 第 1 回 ~ 情報科学部コンピュータ科学科 2 年竹中優 プログラムを書く上で Hello world 基礎事項 演算子 構文 2 コメントアウト (//, /* */, /** */) をしよう! インデントをしよう! 変数などにはわかりやすい名前をつけよう! 要するに 他人が見て理解しやすいコードを書こうということです 3 1. Eclipse を起動 2. ファイル 新規 javaプロジェクト
Microsoft PowerPoint - chap10_OOP.ppt
プログラミング講義 Chapter 10: オブジェクト指向プログラミング (Object-Oriented Programming=OOP) の入り口の入り口の入り口 秋山英三 F1027 1 例 : 部屋のデータを扱う // Test.java の内容 public class Test { public static void main(string[] args) { double length1,
Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN Exam's Question and Answers 1 from Ac
Actual4Test http://www.actual4test.com Actual4test - actual test exam dumps-pass for IT exams Exam : 1z1-809-JPN Title : Java SE 8 Programmer II Vendor : Oracle Version : DEMO Get Latest & Valid 1z1-809-JPN
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
Java言語 第1回
Java 言語 第 8 回ウインドウ部品を用いる (1) 知的情報システム工学科 久保川淳司 [email protected] 前回の課題 (1) マウスを使って, 前回課題で作成した 6 4 のマスの図形で, \ をマウスクリックによって代わるようにしなさい 前回の課題 (2) import java.applet.applet; import java.awt.*;
5 p Point int Java p Point Point p; p = new Point(); Point instance, p Point int 2 Point Point p = new Point(); p.x = 1; p.y = 2;
5 p.1 5 JPanel (toy example) 5.1 2 extends : Object java.lang.object extends... extends Object Point.java 1 public class Point { // public int x; public int y; Point x y 5.1.1, 5 p.2 5 5.2 Point int Java
ブロック崩し Step1 矢印キーで左右に動かせるパドルを描画する < パドルの表現方法 > パドルは java.awt パッケージの Rectangle という Java が用意しているクラスを使う これは四角形を表すクラスで 左上の点の座標と幅 高さをもっている (x, y) Rectangle
GUI プログラミング第 3 回演習 BlockBreaker ~ かんたんブロック崩しゲーム ~ パドルを左右に操作して落ちてくるボールを反射させ 上のブロックを崩していく ブロック ボール パドル 1.eclipse.zip を D: ドライブにコピーし 右クリック ここに解凍 2.workspace を S: ドライブから D: ドライブにコピー 3.eclipse.exe
問題1 以下に示すプログラムは、次の処理をするプログラムである
問題 1 次に示すプログラムは 配列 a の値を乱数で設定し 配列 a の値が 333 より大きく 667 以下の値 の合計値を求めるプログラムである 1 と 2 に適切なコードを記述してプログラムを完 成させよ class TotalNumber { public static void main(string[] args) { int[] a = new int[1000]; // 1 解答条件
第1章 ビジュアルプログラミング入門
付録 A 既存のクラスの利用の仕方 第 7 章では フレームクラス (NewJFrame.java) とそこから呼び出されるクラス (Meibo.java など ) を同じプロジェクト内 つまり同じパッケージ内に定義しました しかし 一般には 別のパッケージ ( フォルダ ) に保管されているクラスを利用する場合があります ここでは その方法を説明します なお フォルダは Java の用語ではパッケージに対応するので
プログラミング基礎I(再)
山元進 クラスとは クラスの宣言 オブジェクトの作成 クラスのメンバー フィールド 変数 配列 メソッド メソッドとは メソッドの引数 戻り値 変数の型を拡張したもの 例えば車のデータベース 車のメーカー 車種 登録番号などのデータ データベースの操作 ( 新規データのボタンなど ) プログラムで使う部品の仕様書 そのクラスのオブジェクトを作ると初めて部品になる 継承 などの仕組みにより カスタマイズが安全
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
2
プログラミング応用演習 b 10 月 5 日演習課題 2016/10/05 PAb 演習課題 プログラム仕様書作成課題 課題クラスを読み 次に示すクラスの仕様書を完成させよ なお 仕様書は クラス 1 つに付き 1 つ作成す る 加えて 図 1 のようなクラス継承の模式図を作成せよ < クラス名 のプログラム仕様書 > 作成者 : 学籍番号 名前 (1) クラスクラス名 : クラス名 説明 : クラスが何を表現しているか
JavaプログラミングⅠ
Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double
