Visual Basic 中学校 |
訂正とお詫び
概要 ・ 当サイトで掲載されていた内容で、誤りがあった部分についての訂正とそれについてのお詫びをまとめます。 ・すべての訂正がこのページに記載されるわけではありません。このページに記載するかどうかは当サイトの管理者の裁量に委ねられます。 ・このページは随時更新されます。 |
サンプルに誤りがありました。サンプルは正しく動作しない場合があります。このサンプルを採用してくださった方々にお詫びいたします。
以下の行で代入式が誤っていました。
Dim RestLength As Integer = System.Text.Encoding.GetEncoding("Shift_JIS").GetByteCount(str) - Start + 1 - Start + 1
上記の場合、第3引数を省略するか第3引数に0を指定してMidB関数を呼び出すと戻り値が不正になるか例外が発生します。
第3引数に0以外の値を指定した場合の動作は正常です。
この行は正しくは以下の通りになります。
Dim RestLength As Integer = System.Text.Encoding.GetEncoding("Shift_JIS").GetByteCount(str) - Start + 1
掲示板にて間違いを指摘してくださった福笑いさんに感謝します。ありがとございます。
掲載されているサンプルはそのままでは実際には動作しないものでした。動作するように修正しました。
2005年5月21日の更新で第25回全体を改訂したためこれ以降ではサンプルも含めてこの回の記述はすべて正確なものとなっています。
以前は、VB6.0で作成したサンプルをVB.NET2002にコピー張り付けして.NETでの動作を検証した後にサイトにサンプルをアップしたためにVB.NET2002の自動修正機能が働いてVB6.0では動作しない状態になったサンプルをVB6.0用としてそのまま掲載していました。
サンプルを試していただいた方々にご迷惑をおかけしました。
PictureBox1.CreateGraphics が正しい解答にもかかわらず e.Graphics を正しい解答としていました。
1番目の選択肢である e.Graphics が正解として表示されていました。
3番目の選択肢である PictureBox1.Graphics が正解として表示されます。
問題のイベントはClickイベントなので e.Graphics と記述するとビルドエラーになります。なお、Paintイベント内では e.Graphics でイベント発生元のGraphicsクラスを取得することができます。
中間試験を試してくださった方にはご迷惑をおかけしました。
Randome.Nextメソッドを使ったサンプル(リスト3:ランダムな数字を返す)に誤りがありました。サンプル の動作は説明と異なっていました。
Number = Saikoro.Next(1, 6)
となっていたため、Numberには1〜5の値が代入されることになるのに、説明文中では1〜6の値が代入されるように書いてありました。
Number = Saikoro.Next(1, 7)
と改めました。これにより、説明文どおりNumberには1〜6の値が代入されるようになります。
サンプルに誤りがありました。サンプルは正しく動作しない場合があります。このサンプルを採用してくださった方々にお詫びいたします。
拡張子の位置を得るのに単純に InStr関数を使っていました。この場合、フルパス中に2つ以上のドットがあるとサンプルは意図したとおりに動作しません。
拡張子の位置を得るのにInStrRev関数を使うように改めました。
この訂正により、該当ページ内の一部のサンプルがVB5で動作しなくなりました。