以字串格式獲取列舉元素

更新 Nov 29, 2023

環境

軟體

  • LabVIEW

我有一個列舉的資料類型,想以字串格式獲取其元素。是否可以根據使用者的選擇獲取字串資料?有LabVIEW功能可以做到這一點嗎?

有幾種方法既可以獲取列舉的所有專案的字串指示,也可以僅確定當前選定的項目。使用下面的程式碼片段和方法描述來學習一些解決此問題的方法


注意:該圖像是LabVIEW片段,其中包含可在專案中重複使用的LabVIEW代碼。要使用程式碼片段,請按右鍵圖像,將其保存到電腦,然後將檔拖到LabVIEW圖表上。
方法1:具有列舉控制項或指示器的屬性節點
如果存在列舉控制項或指示符,請為列舉創建一個屬性節點,然後選擇RingText.Text屬性。此屬性以字串形式返回當前選定的專案。

方法2:具有列舉控制項或指示器的屬性節點
此方法與方法1相同,不同之處在於它使用引用定義要使用的控制項/指示器。您可以通過在程式框圖上按右鍵控制項/指示器的終端並選擇創建»參考創建參考

方法3:具有列舉控制項或指示器的屬性節點
如果存在列舉控制項或指示符,則為列舉創建一個屬性節點(如方法12),然後選擇Strings []屬性。此屬性返回指定列舉的所有專案的字串陣列。如果只想選擇當前選擇的字串,請使用索引陣列功能,並將列舉連接到索引終端,以訪問所需的字串。

請注意,屬性節點不適用於程式框圖上的常量。因此,前面提到的方法不適用於常量。以下兩種方法同樣適用于列舉常量。

方法4:使用列舉常量,控制項或指示符將其格式化為字串
將列舉連接到Format Into String函數輸入,並將格式字串值%s連接到格式字串輸入。此函數將返回與當前選定的列舉值關聯的字串值。
在上面的示例中,使用了一個常量,但是可以將此常量替換為控制項的區域變數,因為此方法適用於cotrol(或指標)

方法5:使用列舉常量,控制項或指示符從Enum.vi函數獲取LAVAOpenG字串
該方法使用OpenG LabVIEW資料庫中的VI,該VI名為Enum__ogtk.vi中的Get Strings。連接一個轉換為variant的列舉,它將返回所有字串以及當前選擇的字串。 LAVAOpenG LabVIEW資料庫可通過VI Package ManagerVIPM)獲得。
(如果您沒有OpenG庫,則可以使用圖禁用結構來禁用最後一種方法,但仍然可以探索其他方法。)