2

Oracle フォームに 3 つのラジオ ボタンがあります。理想的には、1 つのオプションを選択すると、ブロック 1 が有効になり、ブロック 2 とブロック 3 が無効になります。これはどのように達成できますか?グローバル変数? ラジオボタンの変更を「聞く」トリガーはどれですか?

DBはOracle6iです。

どんな助けでも大歓迎です。

4

1 に答える 1

2

WHEN-RADIO-CHANGED トリガーを調べます。

フォームにすでにラジオ ボタンが定義されている場合は、ラジオ グループがフォームで定義するフィールドであることがわかります。また、1 つのグループに必要な数のラジオ ボタンを定義できます。フォームを作成すると、各ラジオ ボタンが特定の値に関連付けられます。

ラジオ グループ内のラジオ ボタンの 1 つが変更または選択されると、when-radio-changed トリガーが起動します。その時点で、押されたボタンに応じて、ラジオ グループの値が得られます。押されたボタンに対して目的のアクションを実行します。したがって、トリガーでこれを実装するための骨組みの PL/SQL 構造は次のようになります。

IF :radio_group = '1' THEN
  -- enable/disable as many properties as desired for the blocks
  SET_BLOCK_PROPERTY('block1',property_to_enable,PROPERTY_TRUE);
  SET_BLOCK_PROPERTY('block2',property_to_disable,PROPERTY_FALSE);
  SET_BLOCK_PROPERTY('block3',property_to_disable,PROPERTY_FALSE);
ELSIF :radio_group = '2' THEN
  ...
ELSIF :radio_group = '3' THEN
  ...
END IF;
于 2012-05-07T20:30:13.517 に答える