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

■13532 / 1階層)  思うところにフォーカスを移動したいのだが・
□投稿者/ ONnoji -(2022/08/29(Mon) 15:38:44)
    2022/08/29(Mon) 16:19:09 編集(投稿者)

    > すみません ちょっと置き場所変えてうまくいきました。
    > ので 解決済み とさせていただきます。
    >
    > 見てくださった方ありがとうございました。

    もっと早く言ってよぉ〜。(T T)

    じっくり見ちゃいましたよ。 (ーー;)--------------> ※遠い目線

    なので、感想を少々。

    まず、関係ない部分はカットして欲しいですね。

    つまり、支出帳.wfm と 摘要参照.wfm と必要ファイルだけで良いんじゃないですかね。

    言葉が悪いですが、アプリを丸投げされては見る方が大変ですよ。

    p.s.

    プログラムの作り方は自由です。

    しかしながら、今回は私の率直な感想を書かせていただきます。m(__)m

    私はWin桐では一括処理でアプリケーションを作ったことがありません。※DOS桐では一括処理はたくさん作りましたよ。

    拝見したところ、DOS桐の頃のようにEscキーで進行をキャンセルするユーザインタフェースなんですね。

    また、明細部のテキストの上に透明なコマンドボタンを重ね置きするというトリッキーなデザインに驚愕しました。

    確かに、透明なコマンドボタンを重ね置きするというデザインは効果的な場合がありますが、

    まさか明細部のデータを入力するテキストボックスの上に透明なコマンドボタンがあるとは思いませんでした。
       ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・
    この場合には、透明なコマンドボタンを用いずに、

    [フォーム]の[オブジェクトの属性]の[編集対象表]タブの[許可作業]で、[行挿入]と[行訂正]のチェックをオフにする。

    そして、表示モード以外に遷移する必要がある場合には、コマンドボタンの機能名、またはフォームの[更新モード設定]メソッドを実行する

    というデザインが適していると思いますよ。

    例えばテキストボックスの上でスペースバーを押したときを例にすると以下のようになります。

     (例)[キーダウン]イベントで更新モードを変更する

      この例は、スペースキーが押されたら、項目訂正モードに遷移する。
      説明を簡略にするために、拙作:VK_Framework を使用した例を示します。
      ※著者( ONnoji )注:VK_Framework は、INF_Framework 第3.2版 の IPS_Framework に統合される予定です。

      手続き定義開始 txtObjectName::フォーカス取得(文字列 &喪失オブジェクト名)

       手続き実行 VKprcEventKeyDownON( )
       手続き実行 VKprcKeyON( )
       手続き実行 VKprcKeySet( "スペース", 1, "0", "メソッド呼び出し @フォーム.更新モード設定( 8 )" )

      手続き定義終了

      手続き定義開始 txtObjectName::フォーカス喪失(文字列 &取得オブジェクト名)

       手続き実行 VKprcEventKeyDownOFF( )

      手続き定義終了

    キモは、[フォーム]の[オブジェクトの属性]の[編集対象表]タブの[許可作業]で、[行挿入]と[行訂正]のチェックをオフにすることですよ。

    なお、[許可作業]はフォームをユーザが会話操作する時の制限であって、コマンド・メソッドを制限するものではありませんよ。
       ・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・・

    p.p.s.

    最後になりますが、DOS桐からの一括処理というのは[処理(プロセス)中心]のアプローチなんですよね。

    だから、「目的のためには手段を選ばず」という感じで、ゴリゴリのコテンコテンのプログラムを書いても誰も気にしなかったのです。

    しかし、[フォーム+イベント処理]というのは、[フォーム(データ)中心]のアプローチなんだと思いますよ。

    なので、「目的のためには手段を選ばず」ではなく、自然なフォームの操作性(操作の流れ)を生かして、

    補助的に[コマンドボタン]と[イベントハンドラや一般手続き]を利用するのが良いと思います。

    もちろん凝ればキリがありませんが、[イベントハンドラ]をたくさん使うことはまずありませんよ。

    どちらかといえば非常に少ないと思います。

    一括処理からイベント処理へと切り替えるのが難しいと感じる人は多いと思います。

    それは、[処理(プロセス)中心]から[フォーム(データ)中心]という視点の移動が難しいからだと思います。

    [フォーム(データ)中心]で行くのであれば、フォームのタイトルバーは表示しますし、[閉じる]ボタンも表示します。

    なので、自然と[閉じる]ボタンが押されても困らないようなデザインをするようになりますよ。

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

→Re[2]: 思うところにフォーカスを移動し.. /まさやん
 
前の記事(元になった記事) 次の記事(この記事の返信)
上記関連ツリー

Nomal 思うところにフォーカスを移動したいのだ.. / まさやん (22/08/28(Sun) 20:57) #13525
Nomal Re[1]: 思うところにフォーカスを移動し.. / まさやん (22/08/29(Mon) 14:46) #13527 解決済み!
Nomal Re[1]: 思うところにフォーカスを移動し.. / ななーし (22/08/29(Mon) 14:45) #13526
│├Nomal Re[2]: 思うところにフォーカスを移動し.. / まさやん (22/08/29(Mon) 14:59) #13528
│└Nomal Re[2]: 思うところにフォーカスを移動し.. / まさやん (22/08/29(Mon) 15:15) #13529
│  └Nomal Re[3]: 思うところにフォーカスを移動し.. / ななーし (22/08/29(Mon) 15:21) #13530
Nomal 思うところにフォーカスを移動したいのだ.. / ONnoji (22/08/29(Mon) 15:38) #13532 ←Now
  └Nomal Re[2]: 思うところにフォーカスを移動し.. / まさやん (22/08/29(Mon) 17:36) #13533
    └Nomal Re[3]: 思うところにフォーカスを移動し.. / ONnoji (22/08/30(Tue) 15:49) #13537
      └Nomal (削除) / (22/08/30(Tue) 17:42) #13538
        └Nomal Re[5]: 思うところにフォーカスを移動し.. / まさやん (22/08/30(Tue) 18:10) #13539
          └Nomal Re[6]: 思うところにフォーカスを移動し.. / ONnoji (22/08/30(Tue) 18:20) #13540
            └Nomal Re[7]: 思うところにフォーカスを移動し.. / ななーし (22/08/30(Tue) 19:46) #13541
              └Nomal Re[8]: 思うところにフォーカスを移動し.. / まさやん (22/08/30(Tue) 22:22) #13542
                └Nomal 追伸 / まさやん (22/08/31(Wed) 22:46) #13543
                  └Nomal Re[10]: 追伸 / ONnoji (22/09/01(Thu) 13:51) #13549
                    └Nomal Re[11]: 追伸 / まさやん (22/09/01(Thu) 18:38) #13553

All 上記ツリーを一括表示 / 上記ツリーをトピック表示
 
上記の記事へ返信

Mode/  Pass/

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

- Child Tree -
- Antispam Version -