Dictionary の Key プロパティ について

解決


まさお  2005-06-30 23:48:31  No: 90748

まさお  と申します。  宜しくお願い致します。

  WinXP Pro SP1, VB6 SP6 です。

  Dictionaryオブジェクト の Keyプロパティについて教えて下さい。

  ヘルプに「Dictionary オブジェクトにキーを設定します。値の取得も可能です。」とあります。
  値の取得方法が判りません。

  Dim Dict As New Dictionary
  Dim sKey As String

  Dict.Add Key:="abc", Item:="123"
  sKey = Dict.Keys(0)
  Dict.Key(sKey) = "def"   'キーを設定
  sKey = Dict.Keys(0)
  MsgBox sKey

で、"def" になっているので、「キーを設定します」は判ります。
  しかし、続けて、
  MsgBox Dict.key(sKey)
とすると、「コンパイルエラー  プロパティ使い方不正」となります。

  Keyプロパティにおける「値の取得」はどのようにすれば良いのでしょうか?

  以上、宜しくお願い致します。


魔界の仮面弁士  2005-07-01 01:06:16  No: 90749

> ヘルプに「Dictionary オブジェクトにキーを設定します。値の取得も可能です。」とあります。
ヘルプのミスでしょうね。
手許の SCRRUN.DLL の中身を確認してみましたが、IDictionary.Key は、
「Property Let」しか実装されていない「代入専用プロパティ」でした。

(IDictionary.Item の方は、「Property Let/Get/Set」が実装されていましたが)

>  sKey = Dict.Keys(0)
ちなみに、レイトバインドの時は、
  sKey = Dict.Keys()(0)
のように指定しないと、取得できなかったりします。


まさお  2005-07-01 02:21:58  No: 90750

魔界の仮面弁士  さん、ありがとうございます。

> ヘルプのミスでしょうね。
判りました。  ありがとうございました。

> ちなみに、レイトバインドの時は、
も、ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加