ホームページ  >  記事  >  Java  >  Java に基づくタグ、ボタン、ボタン イベントの概要

Java に基づくタグ、ボタン、ボタン イベントの概要

高洛峰
高洛峰オリジナル
2017-01-22 16:47:391282ブラウズ

ラベルとボタンは、おそらくグラフィカル インターフェイスで最も一般的な 2 つのコンポーネントであり、ボタンは常にアクション イベントのトリガーに関連しています。

Label

Label (JLabel) は最も単純な Swing コンポーネントです。ラベル オブジェクトの機能は、その背後にあるインターフェイス コンポーネントを記述することです。ラベルのプロパティ (前景色、背景色、フォントなど) を設定できますが、ラベル内のテキストを動的に編集することはできません。

タグに関するプログラムの基本的な内容は次のとおりです:
1. タグ名を宣言します。
3. タグ オブジェクトをコンテナーに追加します。

JLabel クラスの主な構築メソッドは次のとおりです。

1.JLabel (): 表示テキストなしのラベルを構築します。
2.JLabel (String s): 表示テキスト s を含むラベルを構築します。
3.JLabel( String s , int align): 表示テキストが s であるラベルを構築します。 align はテキストを水平方向に表示する方法で、次の 3 つの配置方法があります。 • 左配置:

JLabel.LEFT


• 中央配置: JLabel.CENTER

• 右配置: JLabel.RIGHT

JLabel のその他の一般的なメソッド。クラスは次のとおりです:

1.setText(String s): ラベルの表示テキストを設定します。
2.getText(): ラベルの表示テキストを取得します。
3.setBackground(Color c): ラベルの背景色を設定します。背景色はコンテナの背景色です。
4.setForeground(Color c): ラベルのテキストの色を設定します。デフォルトの色は黒です。

Button

Button (JButton) は、インターフェイス設計でアクション イベントをトリガーするために使用されます。ボタンはテキストを表示し、ボタンがアクティブになったときにアクション イベントを起動できます。

一般的に使用される JButton 構築メソッドは次のとおりです:

1.JButton(): タイトルなしでボタン オブジェクトを作成します。
2.JButton(String s): タイトル s を持つボタン オブジェクトを作成します。

JButton クラスの他の一般的なメソッドは次のとおりです:

1.setLabel(String s): ボタンのタイトル テキストを設定します。
2.getLabel(): ボタンのタイトルテキストを取得します。
3.setMnemonic(char mnemonic): ホットキーを設定します。
4.setToolTipText(String s): プロンプトテキストを設定します。
5.setEnabled(boolean b): イベントに応答するかどうかを設定します。
6.setRolloverEnabled(boolean b): スクロールできるかどうかを設定します。
7.addActionListener(ActionListener aL): アクションモニターをボタンに追加します。
8.removeActionListener(ActionListener aL): ボタンのモニターを移動します。

ボタン処理アクション イベントの基本的な内容には、次の側面が含まれます。


1. ボタン アクション イベントに関連するインターフェイスは、このインターフェイスを実装するクラスの定義を提供します。

2.
3. ボタン オブジェクトを作成します。
4. ボタン オブジェクトをコンテナに追加します。
5. 制御する必要があるボタン オブジェクトのモニターを登録し、このボタンで生成されたイベントを監視します。ボタン オブジェクトが配置されているクラスが監視インターフェイスを実装している場合、監視を登録するためのコード形式は

addActionListener(this);

[例 11-3] を参照してください。別のクラス A のオブジェクト a が監視として使用される場合、クラス A は実装する必要があります。 ActionListener インターフェースを完了するには、次の形式の 2 行のコードが必要です:

A a = new A();  //创建类A的实例a
addActionListener(a);  //用对象a作为监视器对事件进行监视。

6. ActionListener インターフェースを実装するクラスで、イベントを処理するメソッドの定義を指定します:

public void actionPerformed(ActionEvent e);

イベントを取得するには、イベントソース情報を取得するメソッドを使用します。イベントソース情報を取得するメソッドを使用し、対応する処理を判断して完了します。イベントソースを取得するメソッドは、イベントソースオブジェクトを取得するメソッド getSource() と、イベントソースボタンのテキスト情報を取得するメソッド getActionCommand() です。


[例 11-3] アプリケーションはウィンドウを定義し、赤色のボタンをクリックするとウィンドウの背景色を赤色に設定します。をクリックすると、ウィンドウの背景色が緑色に変わります。

import javax.swing.*;import java.awt.*;import java.awt.event.*;
public class J503{
  public static void main(String[]args){
    ButtonDemo myButtonGUI=new ButtonDemo();//声明并创建按钮对象
    myButtonGUI.setVisible(true);
  }
}
class ButtonDemo extends JFrame implements ActionListener{
  public static final int Width=250;
  public static final int Height=200;
  ButtonDemo(){
    setSize(Width,Height); setTitle("按钮事件样例");
    Container conPane=getContentPane();
    conPane.setBackground(Color.BLUE);
    conPane.setLayout(new FlowLayout());//采用FlowLayout布局
    JButton redBut=new JButton("Red");
    redBut.addActionListener(this);//给Red按钮注册监视器
    conPane.add(redBut);//在窗口添加Red按钮
    JButton greenBut=new JButton("Green");
    greenBut.addActionListener(this);//给Green按钮注册监视器
    conPane.add(greenBut);//在窗口添加Green按钮
  }
  public void actionPerformed(ActionEvent e){//实现接口处理事件的方法
    Container conPane=getContentPane();
    if(e.getActionCommand().equals("Red"))//是Red按钮事件
      conPane.setBackground(Color.RED);
    else if(e.getActionCommand().equals("Green"))//是Green按钮事件
      conPane.setBackground(Color.GREEN);
    else{}
  }
}

マウスでボタンをクリックしてイベントオブジェクトを生成し、そのオブジェクトにイベントを送信することをイベントの発生と呼びます。イベントがモニター オブジェクトに送信されると、モニター オブジェクトによって実装されたインターフェイス メソッドが呼び出され、システムは呼び出し時にイベント オブジェクトのパラメーターを提供します。プログラムにはモニター メソッドを呼び出すコードはありませんが、プログラムは 2 つのことを行います。まず、ボタンによってトリガーされるイベントに応答するモニターであるオブジェクトを指定します。このステップはモニターの登録と呼ばれます。次に、イベントがモニターに送信されたときに呼び出されるメソッドを定義する必要があります。プログラムにはこのメソッドを呼び出すコードはなく、この呼び出しはシステムによって実行されます。

上記のプログラムでは、

redBut.addActionListener(this);
というコードでこれをredButボタンのモニターとして登録し、後続のコードでもこれをgreenButボタンのモニターとして登録しています。上記のプログラムでは、これは現在の ButtonDemo オブジェクト myButtonGUI です。このように、ButtonDemo クラスはモニター オブジェクトのクラスであり、オブジェクト MyButtonGUI は 2 つのボタンのモニターとして機能します。 ButtonDemo クラスには、monitor メソッドの実装があります。ボタンがクリックされると、システムはイベント イニシエーターをパラメータとしてメソッド actionPerformed () を自動的に呼び出します。

コンポーネントが異なれば、トリガーされるイベントのタイプも異なり、モニター クラスも異なります。ボタンによってトリガーされるイベントをアクション イベントと呼び、対応するモニターをアクション モニターと呼びます。アクション モニター オブジェクトのタイプは ActionListener であり、クラスは ActionListener インターフェイスを実装する必要があります。これらの内容を反映するには、プログラムは 2 つのことを行う必要があります:


1. ActionListener を実装するコードをクラス定義の最初の行に接続します。2. クラス内でメソッド actionPerformed () を定義します。

前のプログラムの ButtonDemo クラスは、これら 2 つのことを正しく実行します。

各インターフェース要素がイベントを起動すると、イベントに対応する文字列が存在します。この文字列はアクションコマンドと呼ばれます。コード e.getActionCommand() を使用して、アクション イベント パラメーター e のコマンド文字列を取得します。これに基づいて、メソッド actionPerformed() は、どのボタンがイベントをトリガーしたかを知ることができます。デフォルトでは、ボタンのコマンド文字列はボタン上のテキストです。必要に応じて、メソッド setActionCommand() を使用して、インターフェイス コンポーネントのコマンド文字列を設定できます。

以上がこの記事の全内容です。皆さんに気に入っていただければ幸いです。

Java ベースのタグ、ボタン、ボタン イベントの導入に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。