イベントの概念とは?(その3)
 
ここでは、特殊なコントロールを使った処理を作ってみましょう。
 
まず普通のテキストボックスを一つ作ります。
そしてツールボックスの右下のトンカチのような絵のボタンをクリックして下さい。
 (コントロールの選択ボタン)
利用できるコントロールの一覧が表示されるので、「Slider Control」を選びます。
今回はこれを選んでみます。
これがスライダーです。
このようにAccessの中にあらかじめ用意されているコントロール以外で扱うことができるようになっているコントロールを総称して、
ActiveXコントロール」と呼んでいます。
 
大きさは適当に変更してみてくださいね。
スライダーを動かしたらテキストの数値が増えたり減ったり・・・という命令を作りたいと思います。
 
更新時のイベントを作ってみましょうか。
 
・・・スライダーをドラッグしても何も起きませんでした・・・。
どうやら「更新時」ではないようです。そんなときはいろいろと探してみましょう。
VBAエディタの画面で、Activeコントロール9を選択している状態では右上に「コントロールで使用できるイベントの一覧」が出せます。
ここからいろいろと試してみましょう。
「scroll」イベントがよさそうなので選んでみましょう。
と、新しいプロ-ジャーが出てきました。
で、ここに処理を書いていきます。
スライダーコントロールは内部に値を持っているのですが表には出さないので、
他のテキストボックスに値を代入して使います。
その値は「Value」というプロパティの中に持っているのでこうなります。
さっきの「更新時のイベント」はいらないので消してしまいましょう。
テキストボックスの中にスライダーの値が入りました。
 
さて、スライダーにもう少し工夫を加えてみましょう。
今の設定ではスライダーは0から10まで増えるようになっています。
これはプロパティで調節できるので変えてみましょう。
MaxとMinを変えてみました。
 
ではテキストの方をサイズを少し大きめにとって、規定値のプロパティに今日の日付けを出す関数「Date関数」を入力しましょう。
 
ではVBAのエディタのほうにも下のように入力してみましょう。
ここでフォームを保存しておきましょう。
そしてフォームを開いて確認してみてください。
スライダーを動かすことによって今日の日付けの文字が大きくなったり小さくなったりしましたか?
 
 
もっと大きくしたい場合は「Maxプロパティ」を変えればいいですね。
 
今度は、スピンボタン を利用してみましょう。 
上記を同様の操作でスピンボタンを選択します。
スピンボタン→ が表示されましたか?
 
では適当なテキストボックスを横に作ります。
スピンボックスを上下に動かしたらテキストの中身が増えたり減ったりするようにしてみます。
VBAエディタの上の部分の左でコントロール10を選んだら、右でSpinUpとSpinDownを選びます。
動きますか?
これを応用してみましょう。
そばにラベルを作って中に適当な文字を入力してください。
で、「可視」プロパティを「いいえ」にしておきます。
そして、テキスト11の値が50を超えたらラベルを表示させるようにします。
 
保存してフォームを開いて、スピンボタンを動かすと・・・。

「フォーム全体のプロパティ」のなかの「タイマー」というイベントもおもしろいので使ってみましょうか。

 
タイマ時というところになにか処理を書いて、タイマ間隔に設定された時間間隔ごとにその処理を繰り返します。
タイマ間隔の単位は、1/1000秒です。つまり1秒は1000です。
 
では、フォームの中にもう一つ適当なテキストボックスを作ってください。
そしてフォームの「タイマ時イベント」に
と記述します。Timeというのは今の時刻を入れているTime関数です。
そしてタイマ間隔を1000にします。
すると・・・。
 
こんな感じで今の時刻を刻むことができました。
テキストボックスではなくラベルでもいいでしょう。
ラベルなら入力するためのコントロールではないのでフォービューの状態なら基本的にカーソルもいりませんし。
 
ラベルの場合はラベルの中の「標題」プロパティに代入するので、
 Me!ラベルxx.Caption = Time
としてください。
 
どうでしょう?
もうイベントはばっちりですね。
次は「ADO」について勉強していきたいと思います。
 

 

 
 
(C)1999-2003 BE CORPORATION All rights reserved.Terms of Use. Privacy Policy.