MS Access Tips/Sample and VBA and Blog customize etc...

タグ: イベント共通化 ( 9 件)

ドラッグできて位置を記憶するラベル

ドラッグできるラベルのクラス化でラベルをドラッグできるようにしましたが、フォームを閉じて次にフォームを開くと位置はデザイン時の設定に戻ってしまいます。 最終位置を記憶しておいて、次回開くときに反映させたいという希望は当然出てきますね。これを実現するサンプルを紹介します。 難易度:...

ドラッグできるコントロールクラスで「最背面へ移動」

以前の記事 ドラッグできるコントロールクラス、ラベル、イメージ対応版 で紹介したものですが、移動させてコントロールが重なった時に、前後関係を変更したい場合もあるでしょう。そこでダブルクリックしたら最背面へ移動するという機能を実装しました。 難易度:...

クラスで自作イベントを実装する

「レコード保存ボタン」クラスで入力チェックで、入力チェック後保存するかどうかは、パブリック変数SaveCancelを通してクラスモジュール側に渡していました。今回は、もう少しクラスらしい方法を紹介します。 クラスでは自分でイベントを作ることができます。これを利用して「保存ボタン」クラスに「更新前処理」イベントを追加してみます。 難易度:...

ドラッグできるコントロールクラス、ラベル、イメージ対応版

以前の記事 ドラッグできるラベルのクラス化 でラベルを移動できるようにしました。ラベル以外に例えばイメージコントロールも移動できるようにしてみたいと思います。 簡単なのは別にイメージコントロール用のクラスを作成することです。上記のクラスモジュールの Access.Label の部分を Access.Image に変更するだけです。しかし、ほとんど同じコードを2ヶ所に記述するのは一元管理というメリットを損ないます。ひとつのクラ...

「レコード保存ボタン」クラスで入力チェック

前々回の レコード保存ボタンのクラス化 で保存ボタンをクリックしたときのみ保存する仕様のクラス化をしました。で、そのフォームで正しくデータが入力されているかチェックをするにはどうしたらいいでしょうか。 通常はフォーム全体の入力チェックは更新前処理で行うのが定石です。クラスモジュールでフォームの更新前処理イベントを設定してますが、フォームモジュールの方にも更新前処理イベントを記述することができます。...

レコード保存ボタンのクラス化

前回の記事 マウスホイールでレコード移動しないようにする で「保存」ボタンをクリックしたときのみレコード保存できるようにする仕様のフォームを作成しましたが、ボタンのクリックイベント以外に、フォームの更新後処理、更新前処理、ダーティ時、取り消し時 のイベントプロシージャも記述する必用がありました。入力フォームが一つだけならいいのですが多数ある場合、ユーザーインタフェイスを統一するためにすべての入力フォ...

ドラッグできるラベルのクラス化

前回 マウスドラッグで移動できるコントロール で移動できるラベルを作成しましたが、このようなラベルを複数配置したい場合もあると思います。その場合、ラベルの数だけ、MouseDown、MouseMove、MouseUp イベントプロシージャを記述することになりますが、ちょっと面倒ですよね。 関数(Function)にしてイベントプロパティに設定する方法(ボタンクリックでテキストボックスに文字入力 その1等で紹介)ではイベント引数が使えま...

ボタンクリックでテキストボックスに文字入力 その2

ボタンクリックでテキストボックスに文字入力 その1 の続きです。 前回、ラベル(ボタン)の数だけ、クリック時、マウスボタンクリック時、マウスボタン解放時 に関数を設定しましたが、少し面倒ですね。ボタンが少ないときはいいですが、ボタンが多いと結構、大変な作業になります。 今回は、この作業をコードで自動でするようにします。また、バックスペース機能、計算結果表示機能も追加します。 難易度:...

ボタンクリックでテキストボックスに文字入力 その1

フォーム上にボタンを配置して、マウスクリックでテキストボックスに入力したい。 今回は、このような希望をなるべくシンプルに実現する方法を考察してみます。 サンプルとして、テンキーをクリックして数式を入力して計算結果を表示する電卓を作成します。 ボタンクリックによる文字入力以外に、イベントの処理の共通化などのテクニックも参考になると思います。 難易度:...
該当の記事は見つかりませんでした。