B4J Code Snippet Access ENum's

Discussion in 'B4J Code Snippets' started by stevel05, Feb 28, 2015.

Similar threads

B4J Code Snippet Redirect the output to a file
B4J Code Snippet Find user documents folder
B4J Code Snippet Google Map with custom style
B4J Code Snippet Multiline Labels Text Alignment
B4J Code Snippet Metro Style with JMetro
  1. stevel05

    stevel05 Expert Licensed User

    Sub Name: ENumClass

    Description: This Class allows access to Java Enum's. If you're dabbling with JavaObject, it won't be too long before you come across an ENum. Some methods that require Enums will accept Strings, but others insist on the Enum Object. With this class you can get the Enum Object.

    Code:
    'Class module
    Sub Class_Globals
        
    Private EnumJO As JavaObject
    End Sub

    'Initializes the object. You can add parameters to this method if needed.
    Public Sub Initialize(ClassName As String)
        EnumJO.InitializeStatic(ClassName)
    End Sub
    'Return the Constant for a given Constant String Text
    Sub ValueOf(Text As StringAs Object
        
    Return EnumJO.RunMethod("valueOf",Array(Text))
    End Sub
    'Returns an array containing the constants of this enum type, in the order they are declared.
    Sub Values As Object()
        
    Return EnumJO.RunMethod("values",Null)
    End Sub
    'Returns an array containing a string representation of the constants of this enum type, in the order they are declared.
    Sub ValueStrings As String()
        
    Dim ValueObjects() As Object = Values
        
    Dim JO As JavaObject
        
    Dim ReturnStrings(ValueObjects.Length) As String
        
    For i = 0 To ValueObjects.Length - 1
            JO = ValueObjects(i)
            ReturnStrings(i) = JO.RunMethod(
    "toString",Null)
        
    Next
        
    Return ReturnStrings
    End Sub
    Usage:
    Code:
    Dim EPos As ENumClass
        EPos.Initialize(
    "javafx.geometry.Pos")
        
    Log(EPos.ValueOf("CENTER"))
        
    Log(GetType(EPos.ValueOf("CENTER")))

    Depends On: JavaObject

    Tags: Enum B4j
     
    Last edited: Feb 28, 2015
    GuyBooth, mindful and jmon like this.
Loading...
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice