(現在 過去ログ73 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■11036 / inTopicNo.1)  入力フォームで条件によってカーソルととばしたい
  
□投稿者/ はるか -(2018/05/03(Thu) 16:16:37)
    初めて投稿します。
    桐9を使用しています。

    フォーム作成中なのですが、ある条件によって異なる項目へカーソルを移動させるには、どうしたらよろしいですか?

     まず、[区分]という項目で、1、2、3 と言う条件を入力します。
     その後、
    入力項目(テキストボックス) が【A】【B】【C】と順番にタブが移動するように
     タブオーダーで設定しました。
     
     しかし、下記のようにカーソルをとばしたいのです。
     
     1. [区分]=1の場合は 【A】へ
     2. [区分]=2の場合は 【B】へ
     3. [区分]=3の場合は 【C】へ
      と、カーソルをとばしたいのですが、どのように設定したらよいのでしょうか?

    ちなみに、イベントは使ったことありません・・・。
    初心者の質問で申し訳ございませんが、教えていただけますか?
引用返信 [メール受信/OFF] 削除キー/
■11037 / inTopicNo.2)  Re[1]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ ONnoji -(2018/05/03(Thu) 18:36:29)
    2018/05/03(Thu) 18:49:28 編集(投稿者)

    > 桐9を使用しています。
    > フォーム作成中なのですが、ある条件によって異なる項目へカーソルを移動させるには、どうしたらよろしいですか?
    >
    >  まず、[区分]という項目で、1、2、3 と言う条件を入力します。
    >  その後、
    > 入力項目(テキストボックス) が【A】【B】【C】と順番にタブが移動するように
    >  タブオーダーで設定しました。
    >  
    >  しかし、下記のようにカーソルをとばしたいのです。
    >  1. [区分]=1の場合は 【A】へ
    >  2. [区分]=2の場合は 【B】へ
    >  3. [区分]=3の場合は 【C】へ
    >  と、カーソルをとばしたいのですが、どのように設定したらよいのでしょうか?

    まず、テキストボックスのソースが[区分]ということなので、フォームには編集対象表があるということですね。

    ・表の項目:[区分]のデータ型が不明ですが??
    ・フォームはカード型ですか?、それとも表形式ですか?、それとも伝票形式ですか?
    ・フォーム上でのそれぞれ(区分,A,B,C)テキストボックスの位置関係が不明です?

    ということで、質問をする人にとって自明なことでも、第三者には分からないことだらけなのです。

    そこで提案というかお願いですが、

    ・少なくとも投稿にフォームの画像(キャプチャー)を添付してください。
     ※Windows付属のスニッピングツール( Snipping Tool )を使うと簡単にキャプチャー出来ます。

    ・出来れば、投稿に簡単なサンプルを添付してください。

    そうしていただくと、こうしたら如何でしょうかというアドバイスの返信が寄せられ易くなると思いますよ。


引用返信 [メール受信/OFF] 削除キー/
■11038 / inTopicNo.3)  Re[1]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ 通りすがり -(2018/05/03(Thu) 23:47:40)
    > カーソルをとばしたいのですが

    いつ飛ばしたいの?

    [区分]に入力した時で良いならば、
    [ソース値更新]イベントで[フォーカス設定]メソッドを設定すれば出来ますよ
引用返信 [メール受信/OFF] 削除キー/
■11053 / inTopicNo.4)  Re[1]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ 尾形 -(2018/05/05(Sat) 14:30:24)
    どうも、こんにちは


    ケース開始
     ケース ([区分]=1)
      オブジェクト操作 @tA.フォーカスの設定 = "自動" , \
               @tB.フォーカスの設定 = "キー操作禁止" , \
               @tC.フォーカスの設定 = "キー操作禁止"

     ケース ([区分]=2)
      オブジェクト操作 @tA.フォーカスの設定 = "キー操作禁止" , \
               @tB.フォーカスの設定 = "自動" , \
               @tC.フォーカスの設定 = "キー操作禁止"

     ケース ([区分]=3)
      オブジェクト操作 @tA.フォーカスの設定 = "キー操作禁止" , \
               @tB.フォーカスの設定 = "キー操作禁止" , \
               @tC.フォーカスの設定 = "自動"
    ケース終了

    適当なイベントでこんなルーチンを呼び出すとかどうでしょうか




引用返信 [メール受信/OFF] 削除キー/
■11054 / inTopicNo.5)  Re[1]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ ONnoji -(2018/05/05(Sat) 15:36:22)
    2018/05/05(Sat) 18:00:51 編集(投稿者)

    例えば、

    手続き定義開始 txt区分::ソース値更新()

     ** 初期値は黒
     オブジェクト操作 @txtA{ 前景モード = "指定色", 前景色 = "黒" }
     オブジェクト操作 @txtB{ 前景モード = "指定色", 前景色 = "黒" }
     オブジェクト操作 @txtC{ 前景モード = "指定色", 前景色 = "黒" }

     ケース開始
      ケース ( [区分] = 1 )

       オブジェクト操作 @txtB{ 前景モード = "指定色", 前景色 = "赤" }
       オブジェクト操作 @txtC{ 前景モード = "指定色", 前景色 = "赤" }

       メソッド呼び出し @txtA.フォーカス設定( )

      ケース ( [区分] = 2 )

       オブジェクト操作 @txtA{ 前景モード = "指定色", 前景色 = "赤" }
       オブジェクト操作 @txtC{ 前景モード = "指定色", 前景色 = "赤" }

       メソッド呼び出し @txtB.フォーカス設定( )

      ケース ( [区分] = 3 )

       オブジェクト操作 @txtA{ 前景モード = "指定色", 前景色 = "赤" }
       オブジェクト操作 @txtB{ 前景モード = "指定色", 前景色 = "赤" }

       メソッド呼び出し @txtC.フォーカス設定( )

     ケース終了

    手続き定義終了

    なんてねとか。(^^ゞ


引用返信 [メール受信/OFF] 削除キー/
■11055 / inTopicNo.6)  Re[2]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ はるか -(2018/05/07(Mon) 10:45:42)
    皆様
    ご回答ありがとうございました。

    OHnojiさんの言う通り分かりづらい内容、申し訳ございません。
    また、初投稿ということで、返信にも手間取り遅くなりまして申し訳
    ございません。
    (100kbの壁に苦戦してしまいました)

    キャプチャしたものを作成致しましたので、恐れ入りますが
    ご確認いただけましたら幸いです。

    尚、イベントはほぼ初心者なのです。
    よろしくお願い致します。

934×695 => 250×186

1525657542.gif
/98KB
引用返信 [メール受信/OFF] 削除キー/
■11059 / inTopicNo.7)  Re[3]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ ONnoji -(2018/05/07(Mon) 13:23:08)
    2018/05/07(Mon) 15:23:19 編集(投稿者)
    2018/05/07(Mon) 15:21:07 編集(投稿者)
    2018/05/07(Mon) 13:25:26 編集(投稿者)

    イベント処理作成のご経験が少ないということですが、ご希望の内容は、イベント処理を作成しないと実現できません。

    イベント処理作成の方法は、桐のヘルプに記載されていますのでヘルプを参照して慣れてください。

    また、不明な点はK3のカスタマーサポートもご利用ください。

    当方でサンプルを添付しようとも考えましたが、

    貴殿または貴社のスタッフが試行錯誤される方が今後のためになると思いましたので、説明だけで失礼します。

     ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇ ◇

    オブジェクト名を txt入力区分、txt区分1、txt区分2 と仮定して説明します。

    実際のオブジェクト名と違う場合には読み替えてください。

    <手順>

    1.まず、フォームと同じフォルダに、フォームと同名で拡張子が .kev のイベントファイルを用意します。
      ※同一フォルダでフォームと同じファイル名にすると、以後の管理が行い易くなりますのでお勧めします。

    2.txt入力区分の[ソース値更新]イベントハンドラを作成します。

    3.イベントハンドラの範囲にフォーカス設定( )メソッドを記述します。

      if ( [区分] = 1 .or [区分] = 3 )
       メソッド呼び出し @txt区分1.フォーカス設定( )
      end

      if ( [区分] = 2 )
       メソッド呼び出し @txt区分2.フォーカス設定( )
      end

    <図解>

    以下のように図解してみます。参考にしてください。

    フォーム明細部

    ├ txt入力区分 → テキストボックスが編集状態でキャレットが表示されている時に、Enter/Tabキーを押すとソース値更新イベントが発生します
    │        ※ただし、Escキーでキャンセルした際にはイベントは発生しません。
    │         ↓
    │       イベントハンドラが実行されます
    │         ↓
    │       手続き定義開始 txt入力区分::ソース値更新() ※イベントハンドラは、txt入力区分の[オブジェクトの属性]で自動作成できます
    │                            ※処理内容はご自身で記述してください
    │        if ( [区分] = 1 .or [区分] = 3 )
    │         メソッド呼び出し @txt区分1.フォーカス設定( )
    │        end

    │        if ( [区分] = 2 )
    │         メソッド呼び出し @txt区分2.フォーカス設定( )
    │        end

    │       手続き定義終了

    ├ txt区分1

    └ txt区分2


    <追記>

    なお、桐のテキストオブジェクトには、気が付き難い[オブジェクトのエディタ]というものがあります。

    テキストオブジェクトの[ソース値更新]イベントは、オブジェクトのエディタを確定で脱出した際に発生しますが、

    Escキーでオブジェクトのエディタをキャンセルで脱出した際はイベントが発生しません。

    F4キーやTabキーやEnterキーでオブジェクトのエディタを脱出した際には必ず発生します。

    更に詳しいことは、以下のweb記事を参照してください。
     ↓
    誰でもが知っているが、誰も詳しく知らないソース値更新イベント ( ソフトウェア ) - ブログ版−桐のイベント道場 - Yahoo!ブログ
    https://blogs.yahoo.co.jp/siliconvalley_bay_7565/58216787.html



引用返信 [メール受信/OFF] 削除キー/
■11060 / inTopicNo.8)  Re[3]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ Vision Maker -(2018/05/07(Mon) 22:05:18)
    はるかさん

    こんにちは。

    > キャプチャしたもの

    かっこいいですね。

    イベントを記入するところの開き方は知っていますか。

    まず、この部分を知っているかどうかを知りたいです。



535×720 => 186×250

1525698318.png
/50KB
引用返信 [メール受信/OFF] 削除キー/
■11076 / inTopicNo.9)  Re[4]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ はるか -(2018/05/10(Thu) 11:55:07)
    Vision Maker さん

    ご連絡ありがとうございます。
    数日間たてこんでまして、返信遅れ申し訳ございません・・・。

    はい、こちらのイベントを記入するところの開き方まではわかりました。

    ここから先、ONnojiさんにアドバイスいただいたように、項目名を換えて
    やってみましたが力不足でできていません・・・・(泣)

    はるか

引用返信 [メール受信/OFF] 削除キー/
■11080 / inTopicNo.10)  Re[5]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ Vision Maker -(2018/05/11(Fri) 03:33:41)
    2018/05/12(Sat) 02:20:16 編集(投稿者)

    はるかさん

    こんにちは。

    >項目名を換えてやってみましたが力不足でできていません

    前回の説明でマウスイベントを使用するにチェックを入れていませんでした。

    ごめんなさい。


    イベントでは、手続き定義開始と手続き定義終了の間にパソコンにさせたいことを書きます。

    下の例は、桐10sで書いた処理ですので、桐9ではソース値更新のソースが半角になっているのではと思います。



    手続き定義開始 t区分::ソース値更新()

      if ( [区分] = 1 .or [区分] = 3 )
       メソッド呼び出し @tA.フォーカス設定( )
      end

      if ( [区分] = 2 )
       メソッド呼び出し @tB.フォーカス設定( )
      end

    手続き定義終了


    ちなみに、@マークの後ろはオブジェクト名ですので、はるかさんの作ったテキストボックスのオブジェクト名をあてはめてください。


485×703 => 172×250

1525977221.png
/36KB
引用返信 [メール受信/OFF] 削除キー/
■11085 / inTopicNo.11)  Re[6]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ はるか -(2018/05/14(Mon) 16:47:49)
    Vision Maker さん


    ありがとうございます。
    何度もやり直してみましたが、やはりできません・・・・。
    才能ないのですかね・・・。
    8と12行目でエラーがでます。

    どこがいけないのかお教えいただけると幸いです。


3564×2312 => 250×162

1526284069.gif
/54KB
引用返信 [メール受信/OFF] 削除キー/
■11086 / inTopicNo.12)  Re[7]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ Vision Maker -(2018/05/14(Mon) 20:20:58)

    > 8と12行目でエラーがでます。
    >
    > どこがいけないのかお教えいただけると幸いです。


    オブジェクト名が間違っています。


    手続き定義開始 区分F::ソース値更新( )

      if ( [区分F] = 1 .or [区分F] = 3 )
       メソッド呼び出し @○○.フォーカス設定( )
      end

      if ( [区分F] = 2 )
       メソッド呼び出し @〇〇.フォーカス設定( )
      end

    手続き定義終了


    ○○の部分を変えてください。

    オブジェクト名とソースを間違えているのかな。

    [ ]はつかないはずです。

    図を参照してみてください。

    今度は動くといいな。

    私は、よく間違います。

    そして、みんなもよく間違えます。

420×408 => 250×242

1526296858.png
/72KB
引用返信 [メール受信/OFF] 削除キー/
■11087 / inTopicNo.13)  Re[8]: 入力フォームで条件によってカーソルととばしたい
□投稿者/ はるか -(2018/05/15(Tue) 09:38:13)
    Vision Makerさん



    Vision Makerさんできました(8ω8)
    初めて動きました。感動です(>人<)

    オブジェクトとソースの違いをあまり意識していませんでした。
    目から鱗です(ToT)

    本当にありがとうございました。
    こんな初心者にVision Makerさんをはじめ、みなさん丁寧な
    アドバイスをして下さり、心から感謝致します。

引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -