本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[ACC2]Tab/Enterキーで他のレコードへの移動をさせない方法

文書番号: 401656

最終更新日: 1997/11/01


この資料は以下の製品について記述したものです。

この記事は、以前は次の ID で公開されていました: JP401656

概要

テーブルやクエリーに連結しているフォームで、フォームの最後のコントロールでTab/Enter キーを押すと、次のレコードにフォーカスが移動します。同様にフォームの最初のコントロールで Shift+Tab キーを押すと、前のレコードにフォーカスが移動します。フォームにダミーのコントロールを作成し、コントロールのイベントで他のレコードへフォーカスを移動させないようにする方法を紹介します。

手順

サンプルデータベース NWIND.MDB の [商品] フォームを元にして、フォームで編集中にTab/Enter キーを押しても他のレコードにフォーカスが移動しないフォームを作成します。
  1. Access 2.0 を起動し、サンプルデータベース NWIND.MDB を開きます。
  2. マクロを作成します。
    データベース ウィンドウで [ファイル] - [新規] - [マクロ] コマンドを選択するかデータベースウィンドウの <マクロ> ボタンをクリックし、<新規作成> ボタンをクリックします。
  3. マクロ ウィンドウで、[商品] フォームのフォーカスを制御するマクロのアクションを設定します。[マクロ名] 列が表示されていない場合は、[表示] - [マクロ名] コマンドを選択するか、ツールバーの <マクロ名> ボタンをクリックしてください。
    [GRAPHIC: ]
          マクロ名     アクション            [引数] :コントロール名
          ----------   -------------------   -----------------------
          GoToFirst    コントロールの移動    商品コード
          GoToLast     コントロールの移動    生産中止
    
  4. マクロ名を設定して保存します。ここでは、[マクロ 1] とします。
  5. データベース ウィンドウから、[商品] フォームを選択して、[デザイン] ボタンをクリックします。フォームのデザインビューが開きます。
  6. フォームの [開く時/OnOpen] プロパティに「マクロ 1.GoToFirst 」を設定します。プロパティシートを表示するには、[表示] - [プロパティ] コマンドを選択するか、ツールバーの <プロパティ> ボタンをクリックします。
          プロパティ   設定値
          -----------  -------------------
          開く時       マクロ 1.GoToFirst
    
  7. ツールボックスからコマンドボタンのツールをクリックし、詳細セクションにコマンドボタンを 2 つ追加作成します。各コマンドボタンの プロパティを下記のように設定してください。
    プロパティシートを表示するには、各コマンドボタンを選択して [表示] -[プロパティ] コマンドを選択するか、ツールバーの <プロパティ> ボタンをクリックします。
          プロパティ      設定値
          ---------------------------------
          名前            最初
          透明            はい
          フォーカス取得時     マクロ 1.GoToFirst
          プロパティ      設定値
          ---------------------------------
          名前            最後
          透明            はい
          フォーカス取得時     マクロ 1.GoToLast
    
  8. フォームのコントロールの入力順を設定します。[編集] - [入力順の設定] コマンドを選択し、[入力順の設定] ダイアログボックスを表示します。[入力順:] ボックスで「最初」を「商品コード」の前 (最初のコントロールの位置) に移動します。「最後」を「生産中止」の後(最後のコントロールの位置) に移動します。移動するにはフィールドの左側のボタン (セレクタ) をクリックします。そのフィールドが選択されたら、再度フィールドの左側のボタン (セレクタ) をクリックし移動先までドラッグします。
  9. フォームを保存してデザインビューを閉じます。
  10. [商品] フォームをフォームビューで開きます。[生産中止] チェックボックスでTab や Enter キーを押しても、次のレコードには移動しません。また、[商品コード] テキストボックスで、Shift + Tab を押しても、前のレコードには移動しません。

解説

フォームで編集する最初のコントロールの前と、最後のコントロールの後にダミーのコントロール (コマンドボタン) を作成しています。Tab/Enter キーあるいは、Shift+Tab キーで そのダミーのコントロールがフォーカスを受け取った時に、編集するコントロールにフォーカスを移動しています。
Access 2.0 で操作を記述していますが、Access 1.1 でも同様の操作ができます。
但し、 Access 1.1 では、[名前/Name] プロパティは [コントロール名/ControlName] です。

Keywords: KBHOWTO KB401656
Technology: kbAccessSearch

inserted by FC2 system