Visual Basic 6.0 初級講座
VB6対応

 

Visual Basic 中学校 > VB6 初級講座 >

第7回 コントロールを使う

 

VBの優れたところはコントロールを使って簡単に素早く、しかも優秀なプログラムができるところです。今回からはしばらくこのコントロールの使い方を解説します。

 

1.コントロールとは

 

VBを起動させると左側にアイコンが並(なら)んでいます。いままではここからボタンを作成したりしていたのですが、これがコントロールです。アイコンを数えれば分かるように20個のコントロールが並んでいます。一番左上の矢印だけはコントロールではありません。

ここに並んでいる20個は「標準コントロール」と呼ばれています。実はこのほかにもたくさんのコントロールがあるのです。また、特別なコントロールとして「フォーム」があります。フォームはふつうにVBを起動させるとなにもしなくても作成されていますね。これもコントロールなのです。

20個の標準コントロールのほかは「ActiveX」コントロール(アクティブエックスと読む)と呼ばれていて、店で売っているものもあります。自分で作ることもできます。それでは さぁ、これからコントロールの世界が広がっていきますよ。

今回ははじめなので、ほとんどのコントロールに当てはまる共通した部分を解説します。

個々のコントロール別のくわしい使い方は次回にやる予定です。

 

2.コントロールの位置・大きさ

 

コントロールの配置のしかたはもう知っていますね?念のために書いておくと、配置したいコントロールのアイコンをクリックして、フォームの上で配置したい位置をマウスでなぞればいいのでした。このときにコントロールの位置と大きさは決定されます。もちろん後で変更してもいいのですが、プログラムの実行中に位置や大きさを変えることもできます。

ここではコマンドボタンを例にとって説明しましょう。

コマンドボタンを一つフォームに張り付けてください。クリックするとこのボタンの位置を表示するようなプログラムをしてみましょう。位置はもちろん座標で表すのです。よこの座標(これをX座標という)はCommand1.Left たての座標(これをY座標という)はCommand1.Topで分かります。

Private Sub Command1_Click()

    Msgbox "X座標(よこ): " & Command1.Left & " Y座標(たて): " & Command1.Top

End Sub

同じようにCommand1.Width で横幅(よこはば)、Command1.Heightでたて幅が分かります。これをまとめると次のようになります。

Left    横の位置(X座標)    正確にはコントロールの左上の角のX座標    「レフト」と読む

Top    たての位置(Y座標)    正確にはコントロールの左上の角のY座標    「トップ」と読む

Width    横幅    「ウィドゥス」と読む

Height    縦幅    「ヘイト」と読む

それでは、コマンドボタンをクリックすると左上に移動するようにプログラムしてみましょう。

(はじめから左上にあると変化が分からないので真ん中あたりに置いておいてください)。

Private Sub Command1_Click()

    Msgbox "X座標(よこ): " & Command1.Left & " Y座標(たて): " & Command1.Top

    Command1.Left = 0

    Command1.Top = 0

End Sub

 

さらに、次のようにするとクリックすると大きさが2000×2000の正方形になります。

Private Sub Command1_Click()

    Msgbox "X座標(よこ): " & Command1.Left & " Y座標(たて): " & Command1.Top

    Command1.Left = 0

    Command1.Top = 0

    Command1.Width = 2000

    Command1.Height = 2000

End Sub

 

0 や 2000 といった数字の大きさをいろいろ変えて試してみてください。

 

3.見えなくする

 

位置や大きさのプログラムはほとんどのコントロールに共通することです。このほかにも共通することはたくさんあります。今度はVisibleプロパティを使ってコントロールを見えなくしましょう!

さっきのプログラムはいったん消して、新しく次のようにプログラムしてください。

まず、コマンドボタンを一つと、ピクチャーボックスを配置します。(ピクチャーボックスは一番上の矢印の隣にあるコントロールで、配置するとPicture1という名前(Name)になります)

そして、コマンドボタンをダブルクリックして次のようにコードを書きます。

Private Sub Command1_Click()

    Picture1.Visible = False

End Sub

プログラムを実行して、コマンドボタンを押してみるとピクチャーボックスが見えなくなります。これは見えなくなっているだけで、なくなったのではありません。

もう一つ、コマンドボタンを配置して Picture1.Visible = True とプログラムするとこのボタンを押すと再びピクチャーボックスが見えるようになります。

Visible を False (フォルス)にすると見えなくなり、 True (トゥルー)にすると見えるようになるというわけです。

TrueやFalseなどと日本人には分かりにくい表現ですが、英語圏の人にはとてもわかりやすい表現らしいです。

True と False はスイッチの オン と オフ だと思っておいてください。これからもたくさんでてきます。

 

4.無効にする

 

VisibleプロパティではなくEnabledプロパティを使うとコントロールの有効と無効を切り替えられます。

たとえば、コマンドボタンを二つ配置して、その1つに次のようにプログラムしてみてください。

Private Sub Command1_Cliack()

    Command2.Enabled = False 

End Sub

プログラムを実行してコマンドボタンを押すと片方のコマンドボタンが無効になります。無効というのはどういう状態か確かめるためにもぜひ実行してみてください。

 

5.文字を表示する

 

多くのコントロールは文字を表示しています。たとえばコマンドボタンもはじめは Command1 のように文字を表示しています。この表示されている文字を変えることができます。

表示する文字を変えるには Captionプロパティを使います。

では、ラベルを一つ配置してください。(ラベルは A というアイコンです。配置するとLabel1と言う名前(Name)になります)

ラベルをダブルクリックして次のようなコードを打ちます。

Private Sub Label1_Cliack()

    Label1.Caption = "こんにちは!"

End Sub

実行してラベルをクリックすると こんにちは! と表示が変わるでしょう?

""でかこむのを忘れないでください。ただし、変数を代入する場合は "" をつけないでください。たとえば、次のような場合は "" をつけてはいけません。

Private Sub Label1_Click()

    Dim S As String

    S = "ヤッホー!"

    Label1.Caption = S

End Sub

もし "" でかこんで Label1.Caption = "S" とすると、「S」と表示されてしまいます。

それから、テキストボックスなどはCaptionプロパティではなく、Textプロパティで文字の表示を変えるので気をつけてください。(こういう細かいことは後でやります)。

 

6.プログラムしないで変更する

 

以上がほとんどのコントロールに共通する設定ですが、実は今まで解説したようにプログラムしなくてもコントロールの設定を変えることができます。それを行うのが プロパティウィンドウ です。プロパティウィンドウは大変よく使うので、必ず使い方をマスターするようにしてください。

プロパティウィンドウはふつうは一番右の真ん中に表示されています。もし、どれだか分からなければ、メニューの[表示(V)]をクリックして、[プロパティウィンドウ(W)]を押してみてください。そうすると右の方で青くなった部分があるでしょう(けっこうわかりにくいけど)、これがプロパティウィンドウです。

それでは、プロパティウィンドウを使ってみましょう。コマンドボタンを一つ配置してクリックしてください。ダブルクリックではなくてクリックですよ。そして、プロパティウィンドウの一番上にある「オブジェクト名」というところをみると Command1 と表示されているでしょう。これが名前です。ここを変えればコントロールの名前が変わります。次の行には Appearance   1 - 3D と表示されていますね。これはなかなかおもしろいですが、使い方はまた今度。

この調子で上から下までどんなのがあるのか見てみると 今回説明した Enabled や Caption Visible Left Top Width Height が見つかるでしょう。ここを変更すればわざわざプログラムしなくてもコントロールのプロパティを設定できるわけです。まったく便利なものです。

ただし、よく知らないプロパティはあまりいじらないようにしましょう!

 

.オブジェクトブラウザ

 

もう一つ、オブジェクトブラウザというものを紹介します。コントロールにはたくさんのプロパティがあることはプロパティウィンドウをみれば分かるでしょう。これに加えて、メソッド(命令)、イベント(クリックとか)もたくさんあるし、それらはコントロールによって違うので全部覚えるのは不可能です。(マイクロソフトのビルゲイツだって、全部は知らないに決まっている!)

そこで、いちいち覚えなくてもプロパティ、メソッド、イベント、関数の一覧を表示してくれる便利なものがあります。これがオブジェクトブラウザです。使い方は簡単。キーボードの F2 のボタンを押してください。(または、 メニューの[表示(V)]をクリックして、[オブジェクトブラウザ]でもOK。

ためしに、コマンドボタンのプロパティ、メソッド、イベント、関数の一覧を表示させてみましょう。左の「クラス」と書いてあるところから、 CommandButton をさがしてクリックしてください。そうするとズラっと表示されたのがコマンドボタンのプロパティ、メソッド、イベント、関数の一覧です。たとえばさっき解説したVisibleプロパティがあるか確認してみてください。見つけたらクリックします。すると下の部分に解説まででることが分かりますね。ただ残念なことにこの解説は中級者以上じゃないとさっぱりわかりませんが・・・。

オブジェクトブラウザを終了させるときは画面の右上の × を押してください。このとき × が2つあるので下の方の × を押してください。上の×を押すと VB ごと終了してしまいます。

 

8.まとめ

 

今日はこまごまといろいろやったのでまとめておきます。

Caption    表示する文字を設定する。    「キャプション」と読む。

Enabled    有効、無効を設定する。True か False で。    「イネイブルドゥ」と読む。

Height    たての幅を設定する。

Left    横の位置を設定する

Text    表示する文字を設定する(テキストボックスで)        「テキスト」と読む。

Top    たての位置を設定する

Visible    見えなくする。True か False で。    「ビジブル」と読む。

Width  横の幅を設定する。