オプションボタンの処理を書く
予定通り4日間のお盆休みを無事に過ごさせていただきました(^^)
皆さんは御変わりないですか?
今年のお盆は、大雨による被害が各地で起きていましたから、私も不安になりながらニュース
を見ておりましたが、幸いこちらは何事もなく済みました。
その中でひときわ大きく取りざたされた事故がありましたが、あれはホントに何ともやりきれ
ない気持ちになりましたね。救助が遅い、危機管理がどーでこーでという論点にもなっていま
したけども、やっぱり大前提として"公の警告を無視してどーすんですか!"ってことですよね。
家族も連れてきてるんですから、オトナだったら聞く耳を持って的確に判断してやらないと、
子供はどうすることもできないんですし・・・(-_-メ)
#世の中のオトナ達よ! やっぱり我々もシッカリしようよ!!
てなことを強く感じたお休みでした。
さて本題。
それでは仕様に乗っ取って、オプションボタンの処理を書いていくといたしましょう。
ますは「新規登録」モードから
----------------------------------------------------------------------------------
◆「新規登録」 オプションボタン クリック時
1.表示を On の状態にし、「修正/削除」オプションボタン表示を Off にする
2.「修正」「削除」「次のレコードに移動」「前のレコードに移動」の各ボタンをクリック
不可の状態に設定する
3.「登録」ボタンをクリック可能な状態にする
4.表示中のデータをクリアする
----------------------------------------------------------------------------------
1については、実はもう済んでしまってます(^-^;
前回「GroupName」を設定しましたよね?あの状態でもうコードを書く必要もなく、そういう
設定になってますんで、説明はパス(^^;
#あ、でも仕様に記述しておくことはゼッタイに必要なことですから、お間違いなく。
そうしますと最初に書くのは2の処理ですね。
まずは OptAddMode をダブルクリックして、コードを書く場所を準備しませう。
Private Sub OptAddMode_Click()
End Sub
は間違いなく表示されましたか?
「OptAddModeがクリックされた時」の処理ということでOKなわけです。
次に「どうやって各ボタンをクリック不可の状態にするか」ということですよね。
これも実はプロパティにあるのです。あーもう大体何かやろうと思えば、鍵はプロパティに
あるのね、などとわかってくるわけですね。それでケッコウなのです(^-^
で、その使用可or不可を切り替えるプロパティというのは「Enabled」です。
そこの値を見てみましょう。今貼りついているコントロール全部が True になっていますよね。
この True の状態がいわゆる「使用可」の状態、False の時は「使用不可」というわけです。
試しにどっかのボタンを False にしてフォームを起動してみてください。
どうですか?まず文字の色が薄い表示になってますよね。そして押してみてもへこみませんよね。
こうしてEnabledプロパティの値を変化させることによって、処理中に押させたくないボタンを
押せないようにしたり、入力させたくないコントロールを使用不可にしたりできるわけです。
#このプロパティの使い方についてはよろしいですか?ヽ(^-^ )
それではオプションボタンをクリックされた時のタイミングで、この値を切り替える処理を
書いてみましょう。
---------------------------------------------------------------------------------------
Private Sub OptAddMode_Click()
CmdTouroku.Enabled = True '登録(可)
CmdUpdate.Enabled = False '修正(不可)
CmdDelete.Enabled = False '削除(不可)
End Sub
Private Sub OptUpdMode_Click()
CmdTouroku.Enabled = False '登録(不可)
CmdUpdate.Enabled = True '修正(可)
CmdDelete.Enabled = True '削除(可)
End Sub
---------------------------------------------------------------------------------------
さぁどうでしょう。フォームを起動してモードの切替をやってみて下さい。
思った通りに切り替わりましたか?True と False を間違えたりしてませんか?
そういえば
◆「修正/削除」 オプションボタン クリック時
の処理の途中まで勢いで一緒に書いてしまいましたね(^-^;
でもまぁこれは切替処理ですから、この部分だけは一組で処理を書かないと動きもつかみにくい
ので・・・
とりあえず「新規登録」の4番の処理を先に書きますと、
・・・ってもう書いてありますよね。え?どこに書いてあるかって?
CmdTouroku_Clickのところにもう書いてありましたよ、ホラ↓
---------------------------------------------------------------------------------------
'*** テキストボックスの値クリア ***
TxtName.Text = ""
TxtEmail.Text = ""
TxtBirthday.Text = ""
---------------------------------------------------------------------------------------
これを単純にコピーして、こちらの処理に埋め込めばいいわけですから
---------------------------------------------------------------------------------------
Private Sub OptAddMode_Click()
'*** ボタンの使用状態の切替 ***
CmdTouroku.Enabled = True '登録(可)
CmdUpdate.Enabled = False '修正(不可)
CmdDelete.Enabled = False '削除(不可)
'*** テキストボックスの値クリア ***
TxtName.Text = ""
TxtEmail.Text = ""
TxtBirthday.Text = ""
End Sub
---------------------------------------------------------------------------------------
となればいいわけです。
実行して確認してみてくださいね d(^-^ )
てなことで次回までごきげんよぉぉぉ(^^)/~
|
|
TOP > VBAでラクしたい ~Part 2~
|