更新日:2002/10/1
ツールボックスの中を整理してみよう。これまで使ってきたもの、今後使う予定のものを列挙してみた。
ラベル | 文字表示(書き込みはできない、マウスでドラッグしてコピーもできない) Label1.text="こんにちは" |
テキストボックス | 文字表示・書き込み(Readonly属性で表示専用。ドラッグコピーはできる) If TextBox1.text="こんばんは" Then ・・ |
ボタン | クリックして何かの動作を行う |
ラジオボタン | If RadioButton1.checked=Trueのように使用する |
チェックボックス | If ChekBox1.Checked=Trueのように使用する。 複数組で使用する場合は、グループボックスと併用する。 |
ピクチャーボックス | 画像を表示する。PictureBox1.Visible=Trueなどとして予め設定してある 画像を表示させたりできる。 |
リストボックス | おなじみ。今後、使用する。 |
コンボボックス | おなじみ。今後、使用する。 |
タイマー | 今後使用する。1ms単位でカウントできる。あまり正確ではない。 Timer_TickイベントでTextBox1.Text=TimeStringのように経過時間を 表示する。 |
メニュー | メニューバー |
ステータスバー | ステータスバー。その中に情報を表示させる |
VB.NETでは、VBAやVB6とデータ型の定義の一部が変更されている。
このことは、うかつなことだが、最初は、気づかなかった。
例えば、VBA/VB6で「Integer」は、整数型(-32768~32767)であるが、VB.NETでは、同じ範囲は、Shortと呼ばれていて、Integerは、VBの長整数型(-2147483648~2147483647)を表すことになっている。
より、正確には、ヘルプを元にした下記表を見て欲しい。
なお、下表の左列のVisual Basicとは、VB6互換のために用意されている型名であり、VB6での定義ではない。
VB6でのVariant型は、なくなり、Object型に統合されている。通貨型もなくなり、Decimalを使用する。
※データ型の宣言は、Integerでも System.Int32でも同等である。
Visual Basic |
共通言語ランタイムの型 |
サイズ |
値の範囲 |
Boolean |
System.Boolean |
2 バイト |
True または False |
Byte |
System.Byte |
1 バイト |
0 ~ 255 |
Char |
System.Char |
2 バイト |
0 ~ 65535 |
Date |
System.DateTime |
8 バイト |
0001 年 1 月 1 日 0:00:00 ~ 9999 年 12 月 31 日 11:59:59 PM |
Decimal |
System.Decimal |
16 バイト |
-79,228,162,514,264,337,593,543,950,335 ~ 79,228,162,514,264,337,593,543,950,335 (小数部分を持たない数値の場合)。 |
Double |
System.Double |
8 バイト |
-1.79769313486231570E+308 ~ -4.94065645841246544E-324 (負の値)。4.94065645841246544E-324 ~ 1.79769313486231570E+308 (正の値)。 |
Integer |
System.Int32 |
4 バイト |
-2,147,483,648 ~ 2,147,483,647 |
Long |
System.Int64 |
8 バイト |
-9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 |
Object |
System.Object (クラス) |
4 バイト |
任意の型を格納 |
Short |
System.Int16 |
2 バイト |
-32,768 ~ 32,767 |
Single |
System.Single |
4 バイト |
-3.4028235E+38 ~ -1.401298E-45 (負の値)1.401298E-45 ~ 3.4028235E+38 (正の値) |
String |
System.String (クラス) |
|
0 個 ~ 約 20 億個の Unicode 文字 |
上記では、ユーザ定義型は、省略している。
なお、データ型の宣言は、VB.NETでは、既定で強制される。これは、VBA等と逆である。Option
Expilicit Onと
宣言部に記載されているのと同じ状態になる。(明示的にOffとしない限り型宣言が必要となった)
VBA/VB6で、例えば、aは、文字型で、値が1、bは、整数型としたとき、b=aが許されていた。
この場合、bは、整数の1となった。
これは、VB.NETでも既定では同等であるが、宣言部に Option Strict On と記載すれば、許されなくなる。
型変換を意識して(型変換関数を使用して)いこう。
Nullは、なくなりNothingとなった。これに伴い、IsNull関数もIs Nothingと文にするか、IsNothing関数を使用する。
オブジェクト変数に代入する際に使用していた、Set命令がなくなった。
+=、-=、*=、/=などが新設された。A+=1は、A=A+1と同等。