ページの先頭行へ戻る
Interstage Studio ユーザーズガイド
Interstage

7.3.6 Javaフォームを編集する

Javaフォーム編集

Javaフォームを編集するために、Javaフォーム定義では以下の操作を行うことができます。

Javaフォーム定義の画面構成

Javaフォーム定義の画面は、以下5つのウィンドウ、エディタおよびビューから構成されています。これらの画面を使用してJavaフォームの編集を行います。

注意

JavaエディタでJavaフォームを開いた場合、背景色の異なる部分のソースは編集できません。この部分のソースは、画面(Bean)の情報やイベント処理を呼び出すソースです。また、先頭の"// Graphical Editor Form"と"//@@Form Design Information start"、"//@@Form Design Information end"で囲まれた部分についても、変更を禁止しています。これらの部分を編集すると、グラフィカルエディタで開けなくなります。

7.3.6.1 Beanを設定する

Beanの新規配置、サイズの変更、移動および複写などの編集操作はマウスを使って行います。

7.3.6.2 Beanを配置する

JavaアプリケーションでBeanを配置する方法として、レイアウトマネージャがあります。レイアウトマネージャを使用すると、画面のサイズ変更に応じて自動的にレイアウトが補正されますが、レイアウトマネージャのサポートする画面形式によって制約を受けます。

画面の拡張性の観点からは画面のサイズ変更に対応することが望ましいため、Javaアプリケーションの画面設計では、レイアウトマネージャの使用を推奨します。

レイアウトの特性

ポイント

Beanの描画が重なる場合は、重量コンポーネントが軽量コンポーネントの上に描画されます。また、各コンポーネント同士の描画が重なる場合は、コンテナへの追加順に従って決定されます。追加順は、コンポーネントツリー上の順番です。レイアウトマネージャの指定が「なし」以外の場合は、同じコンポーネント同士で描画が重なることはありません。

7.3.6.3 Beanのプロパティを参照/設定する

Beanのプロパティには以下の種類があります。

標準プロパティの一覧

JavaフォームおよびBeanの標準的プロパティです。標準プロパティの一覧は以下になります。

和名プロパティ

英名プロパティ

Bean名

beanName

レイアウトマネージャ

layout

矩形

bounds

境界線種別

border

配置条件

constraints

重なり/並び順

addIndex

表示

visible

背景色

background

前面色

foreground

フォント

font

AWT識別名

AWTName

ツールチップ文字列

toolTipText

アテンション

attention

注意

boundsプロパティはウィンドウのクライアント域の幅と高さの値を表示しますが、[実行イメージで編集]が選択されている場合は、ウィンドウの幅と高さの値を表示します。

固有プロパティ

固有プロパティは、各種Beanが提供するBeanInfo情報に指定された情報をもとに表示します。

固有プロパティが読み取り専用プロパティ、書き込み専用プロパティ、および、不可視属性いずれかの場合は、表示を行いません。

また、環境設定のオプションのプロパティで[専門家向けのプロパティを表示する]が選択されていない場合は、一部のプロパティは表示を行いません。

プロパティシートの情報

プロパティの参照および設定は、プロパティウィンドウのプロパティシートで行います。プロパティシートには以下の情報が表示されます。

プロパティシートの機能

プロパティウィンドウ内のボタンには、以下の機能があります。

ポイント

Javaフォーム定義には、スポット編集機能というBeanの主要なプロパティをフォーム上で編集する機能があります。スポット機能を使用するには、Javaフォーム定義のメニューバーから[環境設定] > [オプション] > [フォーム]タブで[スポット編集機能を有効にする]をチェックします。

選択しているBean上でマウスをクリックするか、[Ctrl+E]キーを押すとスポット編集状態になり、Beanの上部にスポット編集中であることを示すラベルが表示されます。

スポット編集を終了するには[Enter]キー、複数行入力可能スポット編集の場合は[Ctrl+Enter]キーを押します。

7.3.6.4 Bean関係を作成する

Javaフォーム定義では、Javaフォーム、アプレットおよびJavaプログラムにおいてBean関係を対話形式で作成し、そのBean関係を可視化することができます。

Bean関係の作成

以下の方法で[Bean関係の作成ウィザード]を起動することができます。ウィザードの指示にしたがって、ソースBeanのイベントおよびターゲットBeanのメソッド/プロパティを設定すると、指定したBeanのイベント処理記述内に、Bean関係のソースが作成されます。

Bean関係の編集

[Bean関係の作成ウィザード]に設定されている値を編集し[作成]をクリックすると、可視化されたBean関係(矢印線)に対応するイベント処理記述内のBean関係のソースが更新されます。

ウィザードは以下の方法で起動することができます。

Bean関係の削除

Javaフォームの可視化されたBean関係(矢印線)上でマウスの右ボタンをクリックし、コンテキストメニューから[削除]をクリックすることで、Bean関係を削除できます。

ポイント

Bean関係の削除は、Bean関係の確認画面からも行うことができます。

Bean関係の可視化

Bean関係を確認するには、Javaフォーム定義のメニューバーから[ツール] > [Bean関係の確認]を選択し、Bean関係の確認画面を起動します。

[Bean関係の確認]画面には、すべてのBean関係の一覧が表示され、Bean関係の新規作成、編集、削除を行うことができます。

Bean関係の解析

Bean関係は自動的に解析されますが、Javaフォーム定義のメニューバーから[編集] > [Bean関係再解析]を選択して任意で解析を行うことも可能です。

7.3.6.5 メニューを定義する

メニューの定義

プルダウンメニューを使う場合は、Javaフォーム定義のメニューバーから[ツール] > [メニュー定義]を選択し、メニュー定義を起動します。メニュー定義では、メニューの構成やメニューに表示する文字列などの情報を定義します。

メニューの操作

Javaフォームに定義したメニューのオブジェクトはJavaフォームのクラスフィールドとなります。通常これらのフィールドを使用してメニューを直接操作する必要はありませんが、特別な処理を行いたい場合にはクラスフィールドを通してオブジェクトを操作できます。

メニューオブジェクトを操作する例を以下に示します。

"APPLY"アテンションが発生したら、メニューオブジェクト「cancel」をマスクします。

public boolean processAttention_APPLY() {
  cancel.setEnabled(false);
  return true;
}

アテンション

メニュー操作に対する動作を記述するためにはアテンションを使用します。アテンションはメニューの操作のみならず、画面全般の操作に対して付けた名前で、メニュー、ボタン、キーなどの操作に対する動作の記述に使用します。

注意

アテンションを発生させるためにはアクションイベントの定義が必須なため、一般のアクションイベントと違いがありません。そのため手間が増加するケースもあるため、アテンションの使用は推奨しません。

7.3.6.6 排他選択グループを定義する

排他選択グループとは、排他選択型Bean(ラジオボタン)をグループ化し、自動的に選択状態を設定する機能です。同一の排他選択グループ内で1つのBeanだけが選択状態に設定され、ほかのBeanは非選択状態に設定されます。

排他選択グループの定義方法

  1. 排他選択グループの設定ダイアログボックスの表示
    Javaフォーム定義のメニューバーから[ツール] > [排他選択グループ定義]を選択し、排他選択グループ定義を起動します。

  2. 排他選択グループの新規作成
    [JBK用グループ追加]、[AWT用グループ追加]または[Swing用グループ追加]をクリックして新規に選択グループを作成します。

  3. グループメンバの設定
    [グループ一覧]リストにある作成したグループ名を選択して、[メンバ設定]をクリックすると、[排他選択グループ内のメンバ設定]画面が表示されます。ここで、グループのメンバを設定します。

注意

デフォルトの排他選択グループ(グループ名:__cdDefaultJFButtonGroup、__cdDefaultCheckboxGroupおよび__cdDefaultButtonGroup)があらかじめ定義されています。排他選択型BeanをJavaフォームに貼った場合、デフォルトの排他選択グループに自動的に追加されます。デフォルトの排他選択グループを削除することはできません。

排他選択グループの直接操作

特別な処理を行いたい場合にはクラスフィールドを通してオブジェクトを操作することができます。

[クラスフィールド名]
排他選択グループ定義ダイアログボックスでグループを追加した際に「グループオブジェクト名」で指定した名前。

[クラスフィールド型]

作成した排他選択グループの種類

排他選択グループオブジェクトのクラスフィールド型

AWT用グループ

java.awt.CheckboxGroup

Swing用グループ

javax.swing.ButtonGroup

"APPLY"アテンションが発生したら、AWT用排他選択グループ「select」内で排他選択されているオブジェクトの背景色を赤に設定します。

public boolean processAttention_APPLY() {
  select.getSelectedCheckbox().setBackground(java.awt.Color.red);
  return true;
}