過去の桐井戸端BBS (桐ver.9)
21966 フォームの入力で全項目の入力が終わった後自動的に次の新規レコードに移動したい つねにうつ(鬱) 2003/08/22-18:08
 フォームの入力で全項目入力が終わった後、最後の項目を何回叩いても次の新規レコードに移動しませんね。
そこでこんな事が出来ないか夢見ているのですが。

全ての入力項目に画面上で番号を振っておき、最後のレコードを入力した後、
フォーム上で確認欄がありそこにカーソルが移動し「登録しますか」と質問が出ます。
OK:Ret 訂正No(■)
の()内にカーソルブリンクで入力待ちをして、OKならリターンキーを押すと
次の新規データ入力になり、番号とリターンキーを押すと
その番号の項目のデータ訂正になる・・・なんて、贅沢な事を夢見ていますが、
そんな方法は可能でしょうか。
なんかヒントでも頂ければ有難いのですが。よろしくお願いします。

21971 Re:フォームの訂正と入力確定について しぼうかん 2003/08/22-21:46
記事番号21966へのコメント
つねにうつ(鬱)さん、こんばんは.

回答ではないのですいませんが、

> フォームの入力で全項目入力が終わった後、最後の項目を何回叩いても次の新規
>レコードに移動しませんね。

タブオーダーの設定で最後の項目の"改行..."に"次行"と設定してあれば
新規レコードへ移動すると思うのですが?
21976 多分可能でしょう。 佐田 守弘 2003/08/23-00:01
記事番号21966へのコメント
つねにうつ(鬱)さん
その様な事はやった事がないのですが、可能だと思います。
ここでは考え方のポイントを述べます。

●使用するイベント
最後の項目のソース値更新イベントを使います。つまり最後の項目の入力が終了した時点で、
このイベントを発生させるわけです。

●登録の確認
厳密な意味での登録の確認はできないでしょうね。
と言うのは、最後の項目の入力の確定が終わった段階で表への登録は終っています。
もし登録の確認を行うとしたら、次の様な処理になります。
・登録する:何もしないで次に進む(既に登録されているから)
・登録しない:今入力して登録された行を削除する。

●OK:Ret 訂正No(■)の表示
キー入力コマンドを使う方法もあるのかも知れませんが、Windows版の桐らしい方法だと、
どの様にするのでしょうね。
この様な表示を行うラベルオブジェクトを作っておき、上記イベントで非表示から
表示に切り替えて、確認を求めるといった事になるでしょうか。
ラベルオブジェクトではなくて、この様なOKの確認か定性項目を選ぶサブフォームを
作っておいて、非表示から表示に切り替えて操作させる方法も考えられます。
キーだけで操作を行うなら、キーダウンイベントなどを使う方法もあります。

佐田守弘(KS-00119)

21986 Re:フォームの訂正と入力確定について つねにうつ(鬱) 2003/08/23-12:00
記事番号21971へのコメント
>タブオーダーの設定で最後の項目の"改行..."に"次行"と設定してあれば
>新規レコードへ移動すると思うのですが?

しぼうかんさん ありがとうございます。
確かにご指導の通り"次行"とすれば新規レコードに移動しました。
こんな事も知らず、まことに恥ずかしい限りです。
これからもご指導よろしくお願い致します。

つねにうつ(鬱)
21987 Re:多分可能でしょう。 つねにうつ(鬱) 2003/08/23-12:30
記事番号21976へのコメント
佐田守弘様、ご丁寧に考え方を指導頂き、ありがとうございます。
今、佐田様にご指導頂き、出来るかどうか分かりませんが頭に描いていますのは
「使用するイベント」と、「登録の確認」はご指導のままですが、訂正に関しては
@質問のラベルオブジェクトを作り、質問を非表示から表示にする。
Aその質問の回答で、訂正時に訂正項目の番号を入力した時に、各項目のテキストオブジェクト
 に付けられた数値を含んだオブジェクト名と連動して、フォーカス移動のイベントで訂正項目に移動し訂正する。
B訂正が終わればまた質問のオブジェクトに移動しリターンのみが押されるまで質問を繰り返す。
 ・・・の様な流れで浮かべていますが、一度具体的に考えてみます。
 誠にありがとうございました。


戻る