翔泳社のオンラインショップ

独習Visual Basic 2008 正誤表

(最終更新日:2010-08-10)

お買い上げになった刷数:
訂正箇所 改訂
刷数
内容
P.002
下から5行目(Noteの上)
2刷
Pole Allen氏
Paul Allen氏
P.041
Note囲み「フォームデザイナを表示させる」の方法4
2刷
フォームデザイナを表示している場合、フォームデザイナ上で右クリックし、
コードエディタを表示している場合、コードエディタ上で右クリックし、
P.051
本文下から5行目
2刷
逆に言えば、変数を使用する後に宣言してあれば、
逆に言えば、変数を使用するに宣言してあれば、
P.052
「手続き」の項の5行目、および本文下から2行目
2刷
何からのイベント

Visual Studioのコードエディタがラーを認識し

らかのイベント

Visual Studioのエディタがラーを認識し

P.119
リスト4.6 下から3~5行目
2刷
  PrintData(str + " は ""[A-D*]"" に一致します ")
Else
  PrintData(str + " は ""[A-D*]"" に一致しません ")

  PrintData(str + " は ""[A-D]*"" に一致します ")
Else
  PrintData(str + " は ""[A-D]* "" に一致しません ")
P.146
リスト4.25の4、5行目
2刷
For j = 0 To 59 Step 15 ~
   ~ "{0:d2} : {1:d2}", I, J)
For j As Integer = 0 To 59 Step 15 ~
   ~ "{0:d2} : {1:d2}", i, j)
Visual Basic では大文字と小文字を区別しませんが、大文字と小文字を合わせる癖を付けておくのが適切です。
P.148
1行目、4行目
2刷
~ "Data = {0:#,##0}, a)

~ "Data = {0, 7:#,##}", A)
~ "Data = {0:#,##0}", a)

~ "Data = {0, 7:#,##0}", a)
P.151
Sample 1行目
2刷
例4.2で作成したWinAppHit Ver.1.1は、
例4.2で作成したWinAppHit Ver.1.2は、
P.158
リスト5.3、下から2行目
2刷
MsgBox(rt) '70 と表示される
MsgBox(rt) '30 と表示される
P.248
本文下から3行目
2刷
TreeViewコントロールを使うほか、
ListViewコントロールを使うほか、
P.249
表6.6の4行目の「コントロール」と「設定値」、および本文 下から2行目
2刷
TreeView(検索結果を表示する)

TreeView1(規定値)

TreeViewコントロールは、
ListView(検索結果を表示する)

ListView1(規定値)

ListViewコントロールは、
P.250
3行目小見出し、および5行目
2刷
TreeViewコントロール
ListViewコントロール
P.280
表7.5「対象」
2刷
モードレス(M)
モードレス(L
P.288
表7.9、Filterプロパティの設定値
2刷
テキストファイル(*.txt)¦*.txt¦すべてのファイル(*.*)¦*.*
テキストファイル(*.txt)|*.txt|すべてのファイル(*.*)|*.*
¦(破断線) ではなく、|(パイプ)
P.315
理解度チェックの5.、3つ目の●のコード
2刷
CountBar.MaxValue = 180 '最大値を指定する(緑色のバーで満たされた状態のときの値)
CountBar.Value = 100 '現在の値を指定する
CountBar.MinValue = 0 '最小値を指定する(緑色のバーがない状態のときの値)
CountBar.Maximum = 180 '最大値を指定する(緑色のバーで満たされた状態のときの値)
CountBar.Value = 100 '現在の値を指定する
CountBar.Minimum = 0 '最小値を指定する(緑色のバーがない状態のときの値)
P.315
理解度チェックの5.、4つ目の●の「ヒント」1行目
2刷
既存のメンバ変数isGameFinishedは、開始状態の時はTrueになっており、正解時(ゲーム終了時)には、Falseになっています。
既存のメンバ変数isGameFinishedは、開始状態の時はFalseになっており、正解時(ゲーム終了時)には、Trueになっています。
P.331
下から1行目
2刷
例) CCustomer.Bonus(200)
例) Customer.Bonus(200)
P.368
網掛け部分の下の文章
2刷
そこで、このサンプルでは~(中略)~名前空間を指定してください。
そこで、このサンプルでは前述のルート名前空間OurCorpも使用して、名前空間を「OurCorp.Data」とします。よって、ソースコード上では、追加した2つのクラス(Product.vbとProductList.vb)について、リスト8.37のように名前空間Dataで囲むようにしてください。
P.368
リスト8.37のキャプション
2刷
名前空間の指定
名前空間Dataの指定(Product.vbおよびProductList.vb)
P.441
●ファイル名
2刷
QuickTwo.vb
QuickTwoGame.vb
P.474
問題「3.」
2刷
cn.__________ = __________
cn.Open()
cn.ConnectionString = My.Settings.MyConStr

cn.__________ = __________
cn.Open()
「cn.ConnectionString = My.Settings.MyConStr」部分を削除します。
P.475
本文4行目
2刷
既定のままで、それぞれTestBox1、ListBox1とします。
既定のままで、それぞれTextBox1、ListBox1とします。
P.508
表10.4、Amount列の値欄
2刷
System.int
System.int32
P.509
2箇所
2刷
小見出し・・・型指定されたデータセットの読み込み~DbComp.vb

リスト10.18・・・型指定されたデータセットに対応(DbComp.vb)

小見出し・・・型指定されたデータセットの読み込み~DbComp1.vb

リスト10.18・・・型指定されたデータセットに対応(DbComp1.vb)
P.510
リスト10.18(前ページからの続き)
2刷
6行目のあとに以下のコードを追加します(前後に1行ずつ空行が入ります)。
cmd.CommandText = _
   "INSERT INTO Orders VALUES(@dat, @memid)"
cmd.Parameters.Add( _
 "@dat", SqlDbType.DateTime).Value = dt
cmd.Parameters.Add( _
 "@memid", SqlDbType.Char, 6).Value = memid
cmd.ExecuteNonQuery()

cmd.CommandText = "SELECT @@IDENTITY"
oid = cmd.ExecuteScalar()
P.519
●3つ目の項目3行目
2刷
メソッドの戻り値もProductsRow型にすること
メソッドの戻り値もProductsRow型の配列にすること
P.525
●名前
2刷
OrderConString
MyConStr
P.533
手順4 1行目
2刷
TextBox、ListView、
TextBox、ListBox
P.540
表11.1
2刷
コントロール(名前)・・・ProductsCombo

値・・・SalesDBDataSet

コントロール(名前)・・・ProductListCombo

値・・・SalesDBDataSet1
P.542
表11.2 値
2刷
SalesDBDataSet
SalesDBDataSet1
P.545
「現在の表示位置の管理」の上部分
2刷
以下の文章を追加します。
(Sample)注文プログラムWinAppOrder Ver.1.5の完成版は、ダウンロードサンプルの「Chap11\Sample03-Ver.1.5」フォルダにあります。
P.548
図11.26の下の部分
2刷
以下の文章を削除します。
(Sample)注文プログラムWinAppOrder Ver.1.5の完成版は、ダウンロードサンプルの「Chap11\Sample03-Ver.1.5」フォルダにあります。
P.610
この章の理解度チェック (1章)
2刷
2. .NET Frameworkに関する知識と、オブジェクト指向プログラミングに関する知識です。
設問2の解答が抜けています。
P.612
練習問題 3.2の1.
2刷
dat = New Long(4)
dat = New Long(4){}
P.612~613
この章の理解度チェック(3章)の解答のナンバリング
2刷
●612ページ右段

1.たとえば、誕生日が~


1.この配列は~


●613ページ左段

2.Button4_Clickイベントハンドラ~

3.Button5_Clickイベントハンドラ~
●612ページ右段

2.たとえば、誕生日が~


3.この配列は~


●613ページ左段

4.Button4_Clickイベントハンドラ~

5.Button5_Clickイベントハンドラ~
「この章の理解度チェック(3章)」の設問解答は2番目以降、ナンバリングがずれております。

なお、613ページ左段上部の解答2.(正しくは4.)のプログラムは以下の修正がございます。

誤) MsgBox("結果は " + CStr(num) + " です。")

正) MsgBox("結果は " + CStr(ch) + " です。")
P.613
左段最上部の2.
2刷
MsgBox("結果は " + CStr(num) + " です。")
MsgBox("結果は " + CStr(ch) + " です。")
「この章の理解度チェック(3章)」の設問解答は2番目以降、ナンバリングがずれております。そのため、この設問番号は正しくは2.ではなく「4.」となります。
P.613
右段、3.の解答プログラムの2行目
2刷
Case 0
Case Is <= 0
P.614
この章の理解度チェック(4章) の設問1、サンプルコードのFor文の次行
2刷
mile = kilo * 1.609R
mile = kilo / 1.609R
正しい算出式は、掛け算ではなく、割り算です。
※サンプルコードも修正/更新していますので、別途ダウンロードしてください。
P.619
左段リスト1の1行目(「5つ目のヒント」のFunction内の一部)
2刷
If guessDigits(i) = _
 "+"c Then Continue For
If guessDigits(j) = _
"+"c Then Continue For
この条件文は、カウンタ変数jを利用したループの内側にあり、このカウンタ変数jが示す位置の値を評価したいので、変数はiではなくj です(ただし、同ページの3行目は変数iのままで正しいです。3行目の answerDigits(i)は、変数iが指し示す値を評価することを、もともと意図しています)。

★注意★この修正(変数iをjに変更)は、これ以降で引用するサンプルの5つ目のヒントのコードすべてに当てはまります。
この修正をしないと、たとえば、正解値と予想値の1桁だけが一致し、その前後がケタ違いで同じ数字のとき、5つ目のヒントは誤ったヒントを返します。具体的には、正解の値が「3528」、入力した予想値が「2539」の場合、2桁目の「5」が一致であり、ケタ違いで同じ数字が「3」と「2」の2つあるので、5つ目のヒントは「2桁」になるべきところです。しかし、「1桁」と誤ったヒントを表示します。
P.646
索引「L」
2刷
ListBoxのデータバインディング・・・・・・529
Loadイベント(Form)・・・・・・272

ListBoxのデータバインディング・・・・・・529
ListViewコントロール・・・・・・248
Loadイベント(Form)・・・・・・272
P.648
索引「T」
2刷
Transactionプロパティ(SqlCommand)・・・・・・495
TreeViewコントロール・・・・・・248
Trim関数・・・・・・183

Transactionプロパティ(SqlCommand)・・・・・・495
Trim関数・・・・・・183
「TreeViewコントロール・・・・・・248」を削除します。

ページ上に戻る

正誤表トップに戻る