Tvorba tříd a ActiveX komponent

Konstanty a kolekce
Určitě jste si již všimli, že nemůžete mít public konstanty v komponentě nebo ve třídě. Možná jste si také všimli, že mnoho parametrů v jiných (profesionálních) komponentách se rozbaluje s nabídkou možných hodnot, jako například vbCritical pro vlastnost Icon ve funkci MsgBox. Abyste něco takového vytvořili ve Vaší komponentě nebo třídě, musíme použít příkaz Enum. To je také jediná cesta, jak vytvářet public konstanty:

Public Enum ShowDialogConstants
    SDC_ShowOpen = 0
    SDC_ShowSave = 1
    SDC_ShowPageSetup = 2
End Enum

Přiřazení hodnot je volitelné, a záleží jen na Vás, jestli to budete používat, ovšem má to výhodu v tom, že si nemusíte pamatovat dlouhé názvy. Použití kolekce v nějaké proceduře je pak následující (všimněte si především deklarace):

Public Sub ShowDialog(vMethod As ShowDialogConstants)

    Select Case vMethod
       Case SCD_ShowOpen
           'zobrazení něčeho na otevírání
       Case 1 
           'zobrazení něčeho na otevírání
    ...

End Sub

Následně, když pak budete psát kód, tak uvidíte rozbalovací nabídku parametrů při použití procedury:

Zpět Další

Autor: The Bozena