Microsoft Access Club >初心者講座 >CDアルバム管理ソフト >このページ >次頁 - 前項


スタート及びインディクスフォームの作成_2 : CDアルバム管理ソフト13-補



それでは、スタートアップフォームの作成に進みます。下記のような小さめなフォームを作成して下さい。

スタートアップフォームの作成

下記のようなフォームを作成します。Accessが開くと同時に立ち上がるフォームです。

フォームの概略
  1. アプリケーションを開くと自動的に立ち上がる。

  2. チェックボックスを設け、表示の有無の選択を可能にする。

  3. ○秒後に自動的に閉じる。

  4. 閉じると同時に、インディックスフォーム(以下基本フォーム)が立ち上がる。

  5. 画像をフォーム上に表示する。

フォームプロパティ

では、空白フォームを作成して下さい。そして、プロパティを基本フォームの作成時と同様に、下記のとおり変更します。

  1. 「境界線スタイル」は"なし"
  2. ポップアップ及び作業ウィンドプロパティ共に"はい"
  3. スクロールバーは"なし"
  4. レコードセレクタ及び移動ボタン共に"いいえ"

また、スタートアップフォーム上でチェックボックスのオン、オフができるように、チェックボックスを配置して下さい。

tbl_ckのテーブルの作成

次に、テーブル名tbl_ckのテーブルを作成します。このテーブルのフィールド数は2個です。フィールドは、

  1. 「ID」(オートナンバー型)

  2. 「CK」(Yes/No型)

のみを配置します。データを追加入力をさせないために、フォームプロパティで 追加の許可 を"いいえ"にして下さい。

テーブルの目的、働き

このテーブルの目的、働きは、次回からスタートアップフォームを表示する、しないをユーザーに選択させるために利用します。スタートアップフォームのレコードソースにtbl_ckテーブルを指定して下さい。

AutoExec のマクロの作成

マクロ名 AutoExec のマクロを作成します。 このマクロはAccessファイルを立ち上げた時に、実行するマクロです。マクロ名を変更しないようにして下さい。AとEは、大文字ですよ。

マクロの記述は下記のとおりです。

マクロの条件式

DlookUp関数を用いて、tbl_ckテーブルのIDフィールド値が 1 の時のCKフィールド値を求めます。

  • CKフィールド値が False(チェックオフの状態) であれば、frm_startフォームを開きます。

  • CKフィールド値が True(チェックオンの状態)であれば、直ちにfrm_基本メニューフォームを開きます。

このように専用テーブルとチェックボックスを組み合わせることで、スタートアップフォームを開く、開かないをユーザー側で制御できるようになります。

自動的にフォームを閉じ、次のフォームを立ち上げる

次に、"自動的にフォームを閉じ、次のフォームを立ち上げる"方法ですが、これはフォームの タイマ時 及び タイマ間隔 イベントを使います。

設定方法は、下記のとおりです。

  1. 閉じる対象のフォームのプロパティを開きます。

  2. イベント欄にある タイマ時 イベントに、マクロ名「スタートアップ」を配置します。

  3. タイマ間隔 イベントには、ミリ秒単位でタイマ時イベントを実行させる間隔を定義します。

  4. サンプルでは、5秒間隔でスタートアップマクロアクションを実行させる設定です。

  5. なお、このイベントはキャンセルできませんので注意が必要です。

マクロ名「スタートアツプ」

スタートアップフォームを閉じて、基本フォームを開くアクションを設定しています。

画像の配置方法

画像の配置の方法ですが、ツールボックスから設定できる「イメージ」と「非連結オブジェクトフレーム」を用いて行う2通りの方法があります。

また、これ以外にも、「連結オブジェクトフレーム」がありますが、これを利用するとリンクされてしまいますので、他のパソコン上ではエラーになります。注意して下さい。

画像ファイルの指定等は下記のとおりです。

但し、PCが変わる場合などの場合、この画像も一緒に移動させなければ行けません。上記のピクチャは、ご覧のように画像をリンクしています。

これで一応、アプリの作成が終わりました。次の"最後の仕上げ"の対応して貰えば完了です。

 

下記のサンプルファイルをダウンロードし確認して下さい。次回は、"最後の仕上げ"をお話しします。お楽しみに…

 

ページの先頭へ 前ページへ戻る

 


スタート及びインディクスフォームの作成_2 : CDアルバム管理ソフト13-補


 

-Microsoft Access Club-