サンプルを紹介します。まず、コピー&ペーストの機能を
確認するために、2つのアプリケーション(以下に紹介)と
通信の仲立ちをする Clipboard のオブジェクトを含みます。
コピー元のアプリケーション Sender は、
textField 内のString オブジェクトを StringSelection クラスのオブジェクトに
変換し、クリップボードに送ります。
ソース・ファイル
コピー先のアプリケーション Receiver は、
クリップボードから StringSelection クラスのオブジェクト
を受け取り、Stringのオブジェクトに変換し、textField に
表示します。
ソース・ファイル
Sender と Receiver のインターフェイス部分は、
共通の ButtonAndText クラスの拡張です。
このクラスは Frameの拡張で、内部に Button と TextAreaのオブジェクトを
1つずつ含みます。
ボタンのアクション処理は新しいイベントモデルに基づいています。
JDK1.1 ではアクションの伝搬は任意のオブジェクト間で可能になります。
ここでは、Button クラスのオブジェクト button がイベントの送り手、
ButtonAndText クラスのオブジェクト自身がイベントの受け手です。
button の側では、次のようにしてアクションの送り先を設定します。
(今までの Event オブジェクトは、
外側のウィンドウに自動的に伝搬されますが、
ActionEvent のオブジェクトは外側のウィンドウに自動的に伝搬はしません。)
button.addActionListener( this );
アクションを受ける側は、ActionListenerインターフェイスを
インプリメントしなくてはいけません。
public class ButtonAndText extends Frame ActionListener {
このインターフェイスが提供する actionPerformed() メソッドは
ボタンからのアクションを受け取ると自動的に呼び出されます。