Obtener elementos de enumeración en formato de cadena

Actualizado el Nov 13, 2020

Ambiente

Software

  • LabVIEW

Tengo un tipo de datos enumerado y me gustaría obtener sus elementos en formato de cadena. ¿Puedo obtener los datos de la cadena según la selección de un usuario? ¿Existe una función de LabVIEW que pueda lograr esto?

Existen varios métodos para obtener ambas indicaciones de cadena de todos los elementos de una enumeración, así como para determinar solo el elemento seleccionado actualmente. Utilice las descripciones de fragmentos y métodos a continuación para conocer algunas formas de abordar esta pregunta.


Nota: Esta imagen es un fragmento de LabVIEW, que incluye código de LabVIEW que puede reutilizar en su proyecto. Para usar un fragmento, haga clic derecho en la imagen, guárdelo en su computadora y arrastre el archivo a su diagrama de LabVIEW.


Método 1: Nodo de propiedad con un indicador o control Enum
En caso de que exista un control o indicador de enumeración, cree un Nodo de propiedad para la enumeración y seleccione la propiedad RingText.Text . Esta propiedad devuelve el elemento seleccionado actualmente como una cadena.

Método 2: Nodo de propiedad con un indicador o control de enumeración
Este método es el mismo que el método 1, excepto que usa una Referencia para definir qué Control / Indicador usar. Puede crear una referencia haciendo clic con el botón derecho en la terminal de un control / indicador en el diagrama de bloques y seleccionando Crear »Referencia .

Método 3: Nodo de propiedad con un indicador o control Enum
En caso de que exista un control o indicador de enumeración, cree un nodo de propiedad para la enumeración (como en el método 1 o 2) y seleccione la propiedad Strings [] . Esta propiedad devuelve una matriz de cadenas para todos los elementos de la enumeración especificada. En caso de que desee elegir solo el seleccionado actualmente, use la función Index Array con la enumeración conectada al terminal de índice para acceder a la cadena deseada.

Tenga en cuenta que los nodos de propiedad no funcionan con constantes en el diagrama de bloques. Por tanto, los métodos mencionados anteriormente no funcionan con constantes. Los dos métodos siguientes también funcionan con constantes enum.

Método 4: formatear en cadena con una constante, control o indicador de enumeración
Conecte la enumeración a la entrada de la función Format Into String, con un valor de cadena de formato de% s conectado a la entrada de cadena de formato. Esta función devolverá el valor de cadena asociado con el valor de enumeración seleccionado actualmente.
En el ejemplo anterior, se usa una constante, pero esto podría reemplazarse con una variable local para el control ya que este método funciona con cotrols (o indicadores)

Método 5: la función OpenG Get Strings de LAVA de Enum.vi con una constante Enum, un control o un indicador
Este método usa un VI de OpenG LabVIEW Data Library llamado Get Strings from Enum__ogtk.vi. Al conectar una enumeración convertida a variante, devolverá todas las cadenas, así como la seleccionada actualmente. La biblioteca de datos OpenG LabVIEW de LAVA está disponible a través del VI Package Manager (VIPM).
(Si no tiene la biblioteca OpenG, puede usar una estructura de deshabilitación de diagrama para deshabilitar el último método, pero aún así poder explorar los demás).