トップ->Java Applet入門

Java入門内検索

目次
Javaトップ
0. はじめに

1. Javaの基礎
   1. コンパイル方法・実行方法
   2. 予約語
   3. 構成
   4. データの型と宣言
   5. 定数と変数
   6. 簡単な演算
   7. ディスプレイへの表示
   8. 文字列

2. 制御文
   1. 順次構造
   2. 単一分岐
   3. 多重分岐
   4. ケース構造
   5. 反復構造(while)
   6. 反復構造(do)
   7. 反復構造(for)
   8. 補助制御文
   9. 練習問題
   10.練習問題
   11.多重ループの抜け方

3. 配列
   1. 配列とは
   2. 配列の宣言と初期化
   3. 配列の使用法
   4. 練習問題
   5. 2次配列と多次元配列
   6. 練習問題

4. クラスの基礎
   1. クラスとは
   2. クラスの作成
   3. コンストラクタ
   4. 例題
   5. 演算子==とequalsメソッド

5. 演算子
   1. 演算子の種類
   2. インクリメント演算子とデクリメント演算子
   3. 複合代入演算子
   4. ビット演算子
   5. シフト演算子
   6. キャスト演算子
   7. 順次演算子
   8. 条件演算子(三項演算子)
   9. instanceof演算子
   10.演算子の優先順位
   11.式と値
   12.条件式と値
   13.練習問題

6. オブジェクト指向とは
   1. オブジェクト指向とクラス
   2. 継承
   3. カプセル化
   4. ポリモーフィズム

7. クラス
   1. thisキーワード
   2. public, protected, private
   3. 静的変数・静的メソッド・静的ブロック
   4. ローカル変数
   5. メソッドの引数
   6. null
   7. 練習問題
   8. インナークラス(内部クラス)
   9. 無名インナークラス(無名内部クラス)
   10. クラスの包含
   11. 練習問題

8. 継承
   1. 継承とは
   2. スーパークラスのコンストラクタ
   3. 継承とキャスト
   4. スコープ
   5. クラスの作成
   6. abstract
   7. 例題)お絵かきソフト
   8. 継承と包含

9. インターフェース
   1. インターフェースとは
   2. インターフェースの宣言
   3. インターフェースの参照
   4. インターフェースの修飾子
   5. インターフェースの継承
   6. インターフェースとinstanceof演算子

10. パッケージ
   1. パッケージとは
   2. パッケージの宣言
   3. クラスパス
   4. import

11. 例外
   1. 例外とは
   2. 例外が起きたら
   3. 例外の種類
   4. catchブロックの検索
   5. throw
   6. throws
   7. エラーと例外
   8. 独自の例外

12. マルチスレッド
   1. スレッドとは
   2. スレッドのライフサイクル
   3. スレッドの作成(Threadクラス)
   4. Threadクラスのメソッド
   5. スレッドの作成(Runnableインターフェース)
   6. 同期
   7. デッドロック
   8. スレッド間の通信

13. ガーベージコレクター
   1. ガーベージコレクターとは
   2. ガーベージコレクターの実行
   3. finalize

14. 有用な(?)クラス群
   1. Math
   2. Random
   3. System
   4. Vector
   5. Stack
   6. Hashtable
   7. Enumeration
   8. String
   9. StringTokenizer
   10. Object
   11. Number
   12. Byte
   13. Short
   14. Integer
   15. Long
   16. Float
   17. Double
   18. BigInteger
   19. BigDecimal
   20. Character
   21. Date
   22. Calendar

15. 入出力
   1. ファイルとディレクトリ
   2. ストリームの種類
   3. 文字ストリーム
   4. Reader
   5. CharArrayReader
   6. StringReader
   7. InputStreamReader
   8. FileReader
   9. BufferedReader
   10. Writer
   11. CharArrayWriter
   12. StringWriter
   13. OutputStreamWriter
   14. FileWriter
   15. PrintWriter
   16. BufferedWriter
   17. バイトストリーム
   18. InputStream
   19. ByteArrayInputStream
   20. FileInputStream
   21. FilterInputStream
   22. BufferedInputStream
   23. DataInputStream
   24. OutputStream
   25. ByteArrayOutputStream
   26. FileOutputStream
   27. FilterOutputStream
   28. BufferedOutputStream
   29. PrintStream
   30. DataOutputStream
   31. ランダムアクセスファイル
   32. スレッド間通信
       PipedInputStream
       PipedOutputStream
   33. クラスの保存
       ObjectInputStream
       ObjectOutputStream
       Serializable
   34. StreamTokenizer
   35. 標準入出力
       キーボードからの入力(標準入力)
       標準出力
       標準エラー出力
   36. 練習問題

16. ネットワーク
   1. インターネットアドレス
   2. TCP/IP通信
   3. UDP通信
   4. URL
   5. 練習問題
   6. マルチキャスト
   7. RMI

17. 中間試験
   1. 問題:Webサーバーを作りなさい
   2. HTTPプロトコル
   3. クラス設計
   4. 解答例

18. AWT
   1. AWTとは
   2. Component
   3. Container
   4. Frame
   5. Button
   6. レイアウト
   7. BorderLayout
   8. FlowLayout
   9. GridLayout
   10. CardLayout
   11. nullレイアウト
   12. イベントとイベントリスナー
   13. ActionListener
   14. Panel
   15. Label
   16. CheckBoxとItemListener
   17. CheckBoxGroup
   18. Choice
   19. List
   20. TextFieldとTextListener
   21. TextArea
   22. ScrollbarとAdjastmentListener
   23. Canvas
   24. 練習問題(計算機)
   25. Point
   26. Dimension
   27. Color
   28. Font
   29. Graphics
   30. 練習問題
   31. 練習問題
   32. ダブルバッファ
   33. イベント その2
       ActionEvent
       ItemEvent
       AdjustmentEvent
   34. KeyListenerとKeyEvent
       InputEvent
   35. MouseListenerとMouseEvent
   36. MouseMotionListener
   37. FocusListenerとFosusEvent
   38. WindowListenerとWindowEvent
   39. ComponentListenerとComponentEvent
   40. ContainerListenerとContainerEvent
   41. アダプタクラスとインナークラス
   42. 無名インナークラス
   43. 練習問題 お絵かき
   44. WindowとDialog、FileDialog
   45. メニュー
   46. ポップアップメニュー
   47. ショートカット
   48. カーソル

19. Java Applet
   1. Java Appletとは
   2. 最初のJava Applet
   3. Appletクラス
   4. Appletクラスのライフサイクル
   5. AppletContext
   6. イメージ
   7. パラメーター
   8. 練習問題 スライドショー
   9. Jarファイル
   10. 練習問題 時計

20. その他のチップス
   1. Javaから別のプログラムを実行させる
   2. StringBuffer
   3. 環境変数の取得
   4. 基数表記
   5. インスタンスのコピー
   6. 値渡しと参照渡し
   7. クラスオブジェクトの比較

21. 修了試験 ↓これより下は工事中です。
   1. 考え中
   2. 考え中
   3.
   4.

22. そしてその後は・・・
   1. ヒューマンアカデミー Javaプログラマー本科
   2. Appli-Style.com iアプリ作成に挑戦
   3. SJC-A 受験チケット申込


・ このページの先頭に戻る
・ トップページに戻る



・ このページの先頭に戻る
・ トップページに戻る

トップ-> Java入門:18章 AWT-> 22.ScrollbarとAdjustmentListener

←前ページへ :  トップへ :  次ページへ→

22. ScrollbarとAdjustmentListener

  スクロールバーとはその名の通り、スクロールバーです。(^^ゞ テキストエリアで行数が多くなり、表示しきれなくなった場合に右側について、その表示範囲を選択できるGUIです。スライダー(Javaではバブルと呼ぶ)を上下(場合によっては左右)にマウスドラッグで動かせるほか、上端、下端(場合によって左端、右端)の矢印ボタンで少しずつ動かすことも可能です。

  もう少しプログラマー的に表記すると、int型の最小値、最大値で定義された範囲内で、GUI的にその数値を選択するためのコンポーネントと言うことになります。

  スクロールバーではいくつか設定値が出てきますので、それを説明します。
最小値文字通り最小値です。バブルが一番左(一番上)に来た時の値です。
最大値文字通り最大値です。バブルが一番右(一番下)に来た時は【最大値−バブル幅】になります。
バブル幅バブルの幅です。【バブル幅÷(最大値−最小値)×コンポーネントサイズ(バーの幅)】が実際のサイズになります。
ユニット増減スクロールバーの左右(上下)にある矢印をクリックした時の増減値です。デフォルトは1です。
ブロック増減スクロールバーの左右(上下)にある矢印とバブルの間の部分をクリックした時の増減値です。デフォルトは10です。

【使い方】
  • Scrollbarのインスタンスを作成します。
  • このインスタンスを配置するFrameなどContainerに追加(addメソッド)する。
  • 必要によってAdjustmentListener(addAdjustmentListenerメソッド)を追加します。
  • 上記リスナーを登録した場合は、必要なメソッドを実装します。

コンストラクタ
Scrollbar()
      垂直方向(縦の)スクロールバーを作成します。
      この場合、最小値0、最大値100、初期値0、バブルサイズ10、ユニット増減1、ブロック増減10です。
Scrollbar(int orient)
      orientにScrollbar.HORIZONTALを指定すると水平方向(左右)、Scrollbar.VERTICALを指定すると垂直方向(上下)のスクロールバーを作成します。
      最小値0、最大値100、初期値0、バブルサイズ10、ユニット増減1、ブロック増減10です。
      orientに不正な値を設定するとIllegalArgumentExceptionが投げられます。
Scrollbar(int orient, int value, int width, int min, int max)
      orientにScrollbar.HORIZONTALを指定すると水平方向(左右)、Scrollbar.VERTICALを指定すると垂直方向(上下)のスクロールバーを作成します。
      最小値min、最大値max、初期値value、バブルサイズwidth、ユニット増減1、ブロック増減10です。
      orientに不正な値を設定するとIllegalArgumentExceptionが投げられます。
      valueが最小値、最大値外になった場合は、最小値あるいは最大値が設定されます。
      最小値、最大値、初期値は負数を受け付けます。
      最小値>最大値が設定された場合、最大値は最小値+1になります。
      widthが負数もしくは0の時は1になります。

メソッド
void addAdjustmentListener(AdjustmentListener al)
    AdjustmentEventを受け取るAdjustmentListenerを登録します。
void removeAdjustmentListener(AdjustmentListener al)
    AdjustmentListenerを削除します。
int getValue()
    現在値を返します。
int getVisibleAmount()
    バブルの幅を返します。
int getMaximum()
    最大値を返します。
int getMinimum()
    最小値を返します。
int getBlockIncrement()
    ブロック増減値を返します。
int getUnitIncrement()
    ユニット増減値を返します。
void setValue(int value)
    現在値をvalueに設定します。
void setVisibleAmount(int width)
    バブルの幅をwidthに設定します。
void setMaximum(int max)
    最大値をmaxに設定します。
void setMinimum(int min)
    最小値をminに設定します。
void setBlockIncrement(int value)
    ブロック増減値をvalueに設定します。
void setUnitIncrement(int value)
    ユニット増減値をvalueに設定します。
void setOrientation(int orient)
    orientがScrollbar.HORIZONTALならば水平方向(左右)のスクロールバー
    orientがScrollbar.VERTICALならば垂直方向(上下)のスクロールバーに設定します。


  また、AdjustmentListenerインターフェースは、下記のメソッドを実装する必要があります。

メソッド
void adjustmentValueChanged(AdjustmentEvent e)
    調整値が変更されると呼ばれます。

  以下、例を示します。スクロールバーとテキストエリアを用意し、スクロールバーの値が変更されたらその内容をテキストエリアに書き加えます。


import java.awt.*;
import java.awt.event.*;

public class Test18_22 implements AdjustmentListener{
    Scrollbar    bar;
    TextArea    textArea;

    public Test18_22(){
        /* フレームを作成します。*/
        Container frm = new Frame();
        frm.setSize(new Dimension(450,350));

        /* レイアウトを設定します。*/
        frm   .setLayout(new BorderLayout());

        /* コンポーネントを作ります。*/
        bar      = new Scrollbar(Scrollbar.HORIZONTAL, 0, 10, 0, 1000);
        textArea = new TextArea(25,10);

        /* リスナーを登録します。*/
        bar.addAdjustmentListener(this);

        /* フレームに登録します。*/
        frm.add(bar      , BorderLayout.NORTH);
        frm.add(textArea , BorderLayout.CENTER);

        /* フレームを表示させます。*/
        frm.setVisible(true);
        textArea.insert(bar.toString(),0);
    }

    /* TextFieldでリターンキーが押されたら次にフォーカスを与える */
    public void adjustmentValueChanged(AdjustmentEvent e){
        textArea.insert(e + "\n" ,0);
    }

    public static void main(String args[]){
        new Test18_22();
    }
}
JavaAppletが有効だとここに上記のプログラム実施例が表示されます


←
前ページへ :  トップへ :  次ページへ→