• 締切済み

「名前'imgMap'は宣言されていません。」というビルドエラーが・・・

VS2003.NETで開発中です。 「名前'imgMap'は宣言されていません。」というビルドエラーがimgMapの箇所で発生します。 しかし、サンプルコードやテキストには、どこにも宣言らしきものが必要とは書かれていないのですが、どのような宣言が必要なのでしょうか? ご教授いただけると助かります。 -----------------------------   ・   ・   ・ For Each oRowUSER In oDSUSER.Tables("USER").Rows  imgMap.Add(CStr(oRowUSER("USER")).Trim, System.Drawing.Bitmap.FromFile("..\images\" & CStr(oRowUSER("USER")).Trim & ".gif")) Next   ・   ・   ・ -----------------------------

みんなの回答

回答No.2

ソースコードを見る限り"imgMap"はオブジェクト変数ですから、「必要」と書かれていなくても宣言は必要です。 (1)Dim imgMap As New ○○○ とか (2)Dim imgMap As ○○○ Set imgMap = New ○○○ のような記述が必要となります。(○○○にはオブジェクト名が入ります。)また、プロジェクトの設定としてアーリーバインディングも必要かと思われます。 どのようなオブジェクトを使用されているのかが分からないので、申し上げられるのはここまでです。

THUBAN
質問者

お礼

(1)や(2)のように、変数を宣言してみてはいたのですが、○○○部分をいろいろ変えてみても、やはり変わらず・・・ 例えばですが、Dim imgMap As New Bitmapと宣言してみると、 Dim imgMap As New BitmapのimgMapのところで、 「この引数の数を受け付ける'New'がないため、オーバーロードの解決に失敗しました。」 のビルドエラーが imgMap.Addのところでは、 「'Add'は'System.Drawing.Bitmap'のメンバではありません。」 のビルドエラーが出ました。 プロジェクトの設定としてアーリーバインディングとは、どのようなものでしょうか? ちょっと検索して調べてはいますが、まだ理解に至ってなくて・・ でもご回答いただき、ありがとうございました。

THUBAN
質問者

補足

自己解決しました。 ImageMapについてヘルプなどを調べまくっていたら、下の記述をしている解説を見つけたので、試しにこの宣言をしてみたところ、解決しました。 サンプルコードの書籍の印刷ミスか説明省略だったのかもしれません。 ありがとうございました。 Dim imgMap As New Hashtable

  • BIGT
  • ベストアンサー率42% (12/28)
回答No.1

最近、似たような質問があったようです。

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1337754
THUBAN
質問者

お礼

ありがとうございます。 この質問は私が過去にしたものです。 今回のエラーは、この質問の内容とは違うものです。

THUBAN
質問者

補足

自己解決しました。 ImageMapについてヘルプなどを調べまくっていたら、下の記述をしている解説を見つけたので、試しにこの宣言をしてみたところ、解決しました。 サンプルコードの書籍の印刷ミスか説明省略だったのかもしれません。 ありがとうございました。 Dim imgMap As New Hashtable

関連するQ&A