過去の桐井戸端BBS (桐ver.9)
27588 重ねたオブジェクトの表示・入力をレコード単位で制御したい。 しぼうかん 2004/09/08-11:16
また教えてください。

伝票形式フォームの明細部に[AB],[A],[B]のオブジェクトが有ります。

[A]と[B]は重ねて有り、[AB]に"A"が入力されている場合は[B]を非表示にさせて
[A]を表示・入力させ、"B"が入力されている場合は[A]を非表示にさせて[B]を表示・入力させたいと思いました。
(これが目的です。)

その目的で[A]のオブジェクト属性の表示タブの中の編集属性式に

#条件選択([AB]="B","背景モード'透明'",[AB]="A","背景モード'指定色'")

[B]の編集属性式には

#条件選択([AB]="A","背景モード'透明'",[AB]="B","背景モード'指定色'")

と記述しました。

これで見た目上はうまくいったように見えたのですが、
[A]が表示されている位置に表示モードの状態でカーソルを持って行くと非表示に
成っている[B]に行っている様で[A]に入力されている文字が表示されません。
この状態で入力すると[B]に入力されてしまいます。

オブジェクト属性で背景モードを透明にすると同時にフォーカス禁止の設定を編集属性式に書くか、
イベントに書けば良いのだろうと思いますが方法がわかりません。
どうすればいいのでしょうか?

27589 Re:重ねたオブジェクトの表示・入力をレコード単位で制御したい。 今村 誠 2004/09/08-12:06
記事番号27588へのコメント
しぼうかんさんにちは
>オブジェクト属性で背景モードを透明にすると同時に
>フォーカス禁止の設定を編集属性式に書くか、イベン
>トに書けば良いのだろうと思いますが方法がわかりません。
>どうすればいいのでしょうか?

台風一過で忙しいので、思いつくヒントは、フォーカスさせたくない方の
オブジェクトをフォーカス禁止よりも、「マウスイベントを使用しない」にした方がより良いと思います。
abのソース値更新や行訂正終了などどのイベントが適当かは試行錯誤してみて下さい。
最善かどうかは解りませんが(^o^)
27590 Re:重ねたオブジェクトの表示・入力をレコード単位で制御したい。 悲しげ 2004/09/08-15:07
記事番号27588へのコメント
ふつうは、重ねないで、入力についてはフォーカス禁止とかで制御し、
表示については色とかでそれと判るようにするとかで対処するような気がします(私はやったことありませんが)。

あるいは、[A]と[B]のどちらかの項目は必ずヌルで、入力する項目以
外は表示無用と云うことなのであれば、項目構成を例えば
  [AB],[入力表示項目],[A],[B]
のようにして[A][B]は完全に非表示として項目計算式を
  [A] #cond([AB]="A",[入力表示項目])
  [B] #cond([AB]="B",[入力表示項目])
のようにすれば、挙げられた限りの「目的」は満たすような……。

ps.
凄い風です。(゜O゜)
27592 Re:重ねたオブジェクトの表示・入力をレコード単位で制御したい。 しぼうかん 2004/09/08-18:09
記事番号27589へのコメント
>台風一過で忙しいので、思いつくヒントは、フォーカスさせたくない方の
>オブジェクトをフォーカス禁止よりも、「マウスイベントを使用しない」
>にした方がより良いと思います。

すいません、またいつものごとく説明不足があった様です。
[AB],[A],[B]このオブジェクトはセクション分割が3の明細部に有り、
"繰り返し表示する"にチェックが入っています。

その為に[A]や[B]のオブジェクト属性にある"マウスイベントを使用
しない"にチェックを入れたり、"フォーカス設定を禁止したりすると全ての
明細行の[A]と[B]に同じ効果が発生してしまいます。

つまり1行目に[A]、2行目に[B]、3行目に[A]を表示・入力する
ようなレコード毎に表示・入力したい項目が違う場合はうまく行きません。

今回は悲しげさんに教えて頂いた方法でうまく行きそうなのでそちらを試して見ようと思います。

今村さん、返答ありがとうございました。

ps.
東京でも昨晩はビュオービュオーとすごい風が吹きました。
27593 Re:重ねたオブジェクトの表示・入力をレコード単位で制御したい。 しぼうかん 2004/09/08-18:11
記事番号27590へのコメント
フォーム上にこれ以上スペースがとれない為オブジェクトを重ねる事を考えました。

>あるいは、[A]と[B]のどちらかの項目は必ずヌルで、入力する項目以
>外は表示無用と云うことなのであれば、

その通りです。
教えて頂いた方法で多分うまく行くような気がしますので試してみます。

悲しげさん、返答ありがとうございました。

ps.
北海道は一番強い風が吹いているようですね。
車が倒れるぐらいですから何が飛んでくるか分かりません。
お気をつけ下さい。

戻る