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
  ・
  ・
  ・
-----------------------------

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ソースコードを見る限り"imgMap"はオブジェクト変数ですから、「必要」と書かれていなくても宣言は必要です。



(1)Dim imgMap As New ○○○
とか
(2)Dim imgMap As ○○○
Set imgMap = New ○○○
のような記述が必要となります。(○○○にはオブジェクト名が入ります。)また、プロジェクトの設定としてアーリーバインディングも必要かと思われます。

どのようなオブジェクトを使用されているのかが分からないので、申し上げられるのはここまでです。

この回答への補足

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

Dim imgMap As New Hashtable

補足日時:2005/04/23 15:27
    • good
    • 0
この回答へのお礼

(1)や(2)のように、変数を宣言してみてはいたのですが、○○○部分をいろいろ変えてみても、やはり変わらず・・・

例えばですが、Dim imgMap As New Bitmapと宣言してみると、
Dim imgMap As New BitmapのimgMapのところで、
「この引数の数を受け付ける'New'がないため、オーバーロードの解決に失敗しました。」
のビルドエラーが
imgMap.Addのところでは、
「'Add'は'System.Drawing.Bitmap'のメンバではありません。」
のビルドエラーが出ました。

プロジェクトの設定としてアーリーバインディングとは、どのようなものでしょうか?
ちょっと検索して調べてはいますが、まだ理解に至ってなくて・・

でもご回答いただき、ありがとうございました。

お礼日時:2005/04/23 14:00

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



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

この回答への補足

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

Dim imgMap As New Hashtable

補足日時:2005/04/23 15:24
    • good
    • 0
この回答へのお礼

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

お礼日時:2005/04/23 13:08

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング