Java
既に何度か登場していますが、ファイルからテキスト(文字列)を入出力するにはjava.ioパッケージのFileReader/FileWriterを使用します。
Swingには指定された時間ごとにアクションイベントを発行するタイマー(JTimer)が用意されています。 このタイマーは1つ以上のアクションイベントリスナーを関連づけることが出来ます。 タイマーはjavax.swing.Timerを用います。
リストと似た機能を持つものに「コンボボックス(JComboBox)」があります。 コンボボックスは編集可能なアイテム(初期設定ではテキストフィールド)を持つドロップダウンリストです。 リストと違い複数の項目からの選択は出来ません。 コンボボックスはjav…
複数の項目から値を選択するような場合には「チェックボックス」や「ラジオボタン」の他に、リスト(JList)を使う方法があります。 リストはjavax.swing.JListを用います。
データを行と列の形式で表示・操作するには、「テーブル」を使うのが便利です。 テーブルは「テーブルヘッダ」「列」「セルの値」から構成されています。 テーブルを生成する際に使用するコンポーネントはjavax.swing.JTableですが、JTableを処理するための…
断層化されたデータを表示するような場合にはツリーを利用すると便利です。 ツリーを実現するためのコンポーネントはjavax.swing.JTreeですが、JTreeを処理するためのクラスとインターフェイスはjavax.swing.treeパッケージになります。 treeパッケージには…
テキストの入力(あるいは出力)を行うには、javac.swing.textJTextComponentを基とするテキストコンポーネントを使用します。 具体的にはjavax.swingパッケージにある「JTextField」「JPasswordField」「JTextArea」「JTextEditor」「JTextPane」などのクラ…
JavaのJFileFilterは、SwingコンポーネントであるJFileChooserで使用されるファイルフィルターインターフェースです。 JFileChooserは、ユーザーがファイルを選択するためのダイアログを提供しますが、JFileFilterを使用すると、ユーザーが選択できるファイ…
通常システムからの知らせに応じてユーザーが反応する場合(例えば、システムからの「本当にファイルを消してもよいですか?」に対する反応で「はい」「いいえ」を選択)は、「ダイアログ(対話)・ウィンドウ」と呼ばれるものを表示します。
Swingの軽量コンテナは、コンポーネント(コンテナ)を含有出来ますが、今回はそれらコンポーネントを特徴的に表示する以下の軽量コンテナついて説明します。
今回はメニュー関係として、JMenuBar, JMenuItem, JMenu, JCheckBoxMenuItem, JRadioButtonMenuItem, JToolBar, JPopupMenuを使用します。 下記にクラスの関係をあげておきます。
Javaでトグルボタンを使用する方法は、Swingを使ってGUIアプリケーションを作成することで実現できます。
JLabeは画像やテキストの表示を行い、JButtonは画像やテキストの表示を行った上で、そのオブジェクトに対するイベントを取得することが可能です。 JLabelとJButtonは同様の機能を持った同名のメソッドが多数ありますが、下記の通りクラスの継承関係は異なり…
ここからはSwingについて取り上げていきます。 JavaのSwingは、Javaプログラミング言語でGUI(グラフィカルユーザインターフェース)アプリケーションを作成するためのツールキットです。 Swingは、AWT(Abstract Window Toolkit)の後継として開発されまし…
レイアウトマネージャーはコンテナにコンポーネントをどのように配置するかを設定するためのものです。 AWTのレイアウトマネージャーは以下のように5種類あり、java.aet.LayoutManagerインターフェイスを実装しています。
今回は入力可能なTextComponent系とダイアログ、ファイルダイアログを扱います。
今まではAWTコンポーネントとして、Canvas、Frameなどを用いてプログラムを作成してきました。 今回からはさらに別のコンポーネントを組み合わせたプログラム制作を行っていきます。
このセクションでは、メニューのCheckboxMenuItem, PopupMenuの使用法とサブメニューの作成を行います。
GUIのプログラムを作成する場合に最も基本となるのがメニューを利用したプログラムです。 今回はメニューの基本としてMenuBar、MenuItem、Menuを使用します。
これまでにスレッドを生成する方法としてRunnableインターフェイスを実装する方法を紹介しましたが、今回はThreadのサブクラスを作成してスレッドを実現します。
ゲームなどで使用する乱数や指数関数、対数関数、平方根、および三角関数といった基本的な数値処理はjava.lang.Mathクラスの各メソッドを利用します。 Mathクラスのメソッドはstaticなメソッドですので、直接メソッドを使用します。 今回使用するメソッドを…
Javaのイベント処理は「イベント駆動型」と呼ばれる処理で行います。 イベント駆動型とはオブジェクトに何らかのイベントが発生した場合はあらかじめ定義された事柄を実行する方法で、イベントが発生したかどうかはアプリケーションで判断してそれに対応する…
複数のイメージを生成して、順次表示させることでアニメーションとなります。 アニメーションを行う場合、「repaint()」で画面描画を制御する必要があります。
AWTでより凝ったグラフィックス描画をする場合、すでにファイルとなっている画像を利用した方が手軽です。 AWTの標準で扱える画像のフォーマットは、JPEG、GIF、PNGです。
Javaで図形を描画するには、いくつかの方法がありますが、その中でも一般的な方法は次の2つです。
Javaには「Java® Platform, Standard Edition & Java Development Kit バージョン21 API仕様」があり、使用できるパッケージの種類や使用方法を調べることが出来ます。
前のセクションで学んだクラス分割を応用して、簡単な検索プログラムを作成します。
それぞれのクラスを持った6つのプログラムを作成し、Javaプログラムの理解を深めます。
前のセッションで学んだコンストラクタを応用したJavaプログラムを作成して理解を深めます。
Javaにおけるコンストラクタ(Constructor)は、クラスからオブジェクトを作成する際に呼び出される特殊なメソッドです。 コンストラクタは、クラスと同じ名前を持ち、戻り値の型を指定せず、メソッドとして定義されます。 コンストラクタは通常、新しいオブ…