Jak používat objekt Dictionary s jazykem Visual Basic

Souhrn

Tento článek popisuje použití komponenty z Microsoft Scripting knihovny; Objekt Dictionary.

Další informace

Slovník je podobný objekt kolekce ve funkci a účel. Slovník, ale nabízí některé funkce, která není k dispozici v kolekci. Mezi tyto funkce patří:

  • Možnost určit metodu porovnání klíčů. To umožňuje klíče velká a malá písmena, např.
  • Metoda určuje, zda objekt existuje ve slovníku.
  • Metody pro extrahování všech klíčů do pole.
  • Metody pro extrahování všechny položky do pole.
  • Metoda pro změnu hodnoty klíče.
  • Metoda pro odstranění všech položek ze slovníku.
  • Klíče slovníku nejsou omezeny pouze na datový typ řetězec.
POZNÁMKA: Jeden důležitý rozdíl mezi kolekce objektu a objekt Dictionary je chování vlastnost položky. Pokud se odkazují na neexistující klíč v kolekci pomocí vlastnosti položky, dojde k chybě. Pokud použijete vlastnost položky chcete-li odkazovat neexistující klíč ve slovníku, klíč bude přidán do slovníku. Použijte Exists metoda k určení, zda je klíč ve slovníku.


Objekt Dictionary je součást Microsoft Scripting knihovny, které nejsou dodávány s Visual Basic verze 5.0 nebo novější. Můžete získat Microsoft Scripting knihovny (SCRRUN. (DLL) při instalaci jedné z následující balíčky:

   Windows Script Host
Windows NT Option Pack
IIS 3.0
Scripting 3.1 upgrade.


Podrobný příklad

  1. Spuštění nového projektu standardní EXE v jazyce Visual Basic. (Ujistěte se, že se zobrazí okna Immediate.) Ve výchozím nastavení je vytvořen formulář Form1.
  2. Přidáte odkaz na Microsoft Scripting Runtime.
  3. Do projektu přidáte standardní modul.
  4. Z nabídky Projekt vyberte Project1.Properties a změnit spouštěcí objekt Sub Main.
  5. Vložte následující kód do Module1:
          Option Explicit      Dim dict As Dictionary

    Sub Main()
    Dim keyArray, itemArray, element

    Set dict = New Dictionary
    With dict
    'set compare mode
    .CompareMode = BinaryCompare
    'add item using named arguments
    .Add Key:="mike", Item:=22
    'add item without named arguments
    .Add "joe", 33

    'case sensitivity and Exists method
    'does MIKE exist?
    Debug.Print "MIKE exists = " & .Exists("MIKE")
    'change key value
    .Key("mike") = "MIKE"
    'does MIKE exist?
    Debug.Print "MIKE exists = " & .Exists("MIKE")

    'extract keys into variant array
    Debug.Print "Array of Keys"
    keyArray = .Keys
    For Each element In keyArray
    Debug.Print element
    Next

    'extract items into variant array
    Debug.Print "Array of Items"
    itemArray = .Items
    For Each element In itemArray
    Debug.Print element
    Next

    'empty the dictionary
    .RemoveAll
    Debug.Print dict.Count & " Items in Dictionary"

    End With
    Set dict = Nothing
    End Sub


  6. Spuštění projektu. Zobrazí počáteční hledání klíče připojení nezdaří, pak následuje po velká hodnota nahrazena hodnota klíče. Dále by měl zobrazit obsah pole varianty, které byly extrahovány pomocí metody klíče a položky slovníku. Poslední viz výsledek vyprazdňování slovníku.
Vlastnosti

ID článku: 187234 - Poslední kontrola: 8. 1. 2017 - Revize: 1

Váš názor