過去の桐井戸端BBS (桐ver.9)
31155 フォーム一覧表形式で明細部の項目をマウスでフォーカスしてからカード型フォームを多重化フォームで表示させたい まこと 2006/02/16-17:19
先日はありがとうございました。

フォーム一覧表形式で、一覧表明細部の[ID]の項目をマウスでフォーカスしてから
そのIDのレコードに対応したカード型フォームを多重化フォームで表示させたいです。

イベントのメイン・一般手続きに
変数宣言 固有,文字列{&ID}とし、
一覧表明細部の[ID]の項目のフォーカス取得イベントに&ID=[ID]とし、
ヘッダ部にコマンドボタンを作って、多重化フォーム編集:"カード型.wfm"として
カード型フォームのフォーム開始イベントに絞り込み [ID]=&IDとしました。

フォーカスをマウスでシングルクリック(表示状態?)しても
うまく&IDに[ID]が代入されないようなんですが、どこかおかしいでしょうか?
31157 Re:変数とフォーカス取得のタイミング 宮城 2006/02/16-17:52
記事番号31155へのコメント

わざわざクリックしてるのですから、「マウス左クリック」イベント使うべきですね。

「フォーカス取得」だけではレコード移動までするでしょうか。ほかには更新モードが適当かどうか。というところがおかしげです。(^^;;

31158 Re:変数とフォーカス取得のタイミング まこと 2006/02/16-18:20
記事番号31157へのコメント
宮城さん
>わざわざクリックしてるのですから、「マウス左クリック」イベント使うべき
>ですね。
なるほど。仰るとおりですね(^^;うまくいきました。

では、キーボードで目的レコードまで持っていった時に
そのレコードの[ID]値を&IDに入れるにはどうすればよいのでしょうか?
マウスでもキーボード操作でも反転しているレコードの[ID]を取得したいのですが…

>「フォーカス取得」だけではレコード移動までするでしょうか。ほかには更新
>モードが適当かどうか。というところがおかしげです。(^^;;
おかしげな質問ですみません。この場合の更新モードって適当ではないんですか?


31160 Re:変数とフォーカス取得のタイミング 宮城 2006/02/16-23:42
記事番号31158へのコメント
変数にレコード項目値を取るだけだったら、何も考えず

代入 &ID=[ID]

でいいですかね。「代入」は省略可です。

これが逆(項目値を変数等で書き換える)だと、

表示モードのとき:「行訂正」
訂正モードのとき:「項目値代入」

と使い分けることになります。こんな風にコマンドはモード(状態ということも)により使用可否が決まってたりします。

それでもって、次の出更新モードをいじるんですが、

メソッド呼び出し @フォーム.更新モード設定( N )

これが使えるイベントにまた制約があったりするので
リファレンスを見ておいてください。

もうちょっと応用を利かすには、

「メソッド呼び出し ソース値取得」

を覚えておくといいでしょう。


31161 Re:変数とフォーカス取得のタイミング まこと 2006/02/17-16:51
記事番号31160へのコメント
宮城さんありがとうございます。
1日中粘っていますがいまいちうまくいきません(−−;
クリックで諦めようかななんって思っています。

しかし、マニュアルに無いアドバイス的なお話を頂戴し、大変参考になり助かりました。
感謝しております。また、良い結果が得られましたらご報告します。


31163 Re:変数とフォーカス取得のタイミング アックン 2006/02/17-17:52
記事番号31161へのコメント
まことさん
マウスを使わないときには、こうすればいいですよ。イベントは不要です。
・コマンドボタン
機能名         機能パラメータリスト
            #set(ID,[ID])
多重化フォーム編集   "カード型.wfm" ←現在の1行目を2行目に移します。

1行目の機能はなしです。

マウス操作のときのことでちょっと気になったことをお尋ねします。
項目{ID}の値を自分で新規に入力したり変更したりしますか。
それともカウンタ型のように自動的に値が入力され、変更することがないですか。
マウス左クリックイベントで支障ないですか?

アックン(=^・^=)
31170 Re:変数とフォーカス取得のタイミング まこと 2006/02/17-21:45
記事番号31163へのコメント
アックンさんこんばんは。そして、ありがとうございます。

アックンさんは No.31163「Re:変数とフォーカス取得のタイミング」で書きました。
>マウスを使わないときには、こうすればいいですよ。イベントは不要です。
>・コマンドボタン
>機能名         機能パラメータリスト
>            #set(ID,[ID])
>多重化フォーム編集   "カード型.wfm" ←現在の1行目を2行目に移します。
>
>1行目の機能はなしです。
なんてシンプルな!でも、なぜ?ってのが本音です(^^;
いままでの苦労は何だったのでしょう。無駄にはならないと思いますが。

>マウス操作のときのことでちょっと気になったことをお尋ねします。
>項目{ID}の値を自分で新規に入力したり変更したりしますか。
>それともカウンタ型のように自動的に値が入力され、変更することがないですか。
IDは別表から新規に表引きで追加してます。変更はありません。
なにかまずいことでも・・・

>マウス左クリックイベントで支障ないですか?
??いまのところ、支障はないようですが・・・
でも、ご提示の方法を使えばマウス左クリックイベントを使用しなくても、同じ挙動が得られますよね?
31188 Re:変数とフォーカス取得のタイミング アックン 2006/02/18-18:21
記事番号31170へのコメント
まことさん
マウス左クリックで訂正モードにならないか心配だったのです。
支障なければいいのですよ。
アックン(=^・^=)

31198 Re:変数とフォーカス取得のタイミング まこと 2006/02/20-13:36
記事番号31188へのコメント
アックンさん こんちわ!

>マウス左クリックで訂正モードにならないか心配だったのです。
>支障なければいいのですよ。

訂正モードでも多重化フォーム編集で開きますね。ただレコードロックで編集できませんでした。
このくらいの操作方法なら他の人に使用してもらっても習得してもらえると思います。ありがとうございました。

戻る