2016-04-18 31 views
0

目前我在一些主窗口中顯示大量用戶定義的GUI組件(模板)(讓我們給它起個名字:signal)。這些GUI組件分佈在窗口周圍,數量相當多(每個窗口> 50),並且我有多個這樣的窗口。顯示GUI組件在Ignition中動態使用Python/Jython腳本

enter image description here

我已經創建了所有那些使用點火GUI,到目前爲止,他們這樣做的窗戶......可是現在,有做出力所能及的信號顯示在GUI窗口的要求,以顯示在GUI的列表中。

enter image description here

我的問題是:

  1. 如何獲取使用Ignition Python/Jython腳本同一類型(信號)的GUI組件(模板)的名單?
  2. 如何獲取其自定義屬性(如customDisplayName
  3. 如何動態繪製GUI組件(模板)?

截至目前,這是我能夠拖放組件在我使用顯示信號模板容器列表(使顯示信號的精確副本)。但是由於可能在GUI中添加新的信號,我在尋找更自動化的解決方案(如果有的話)。

回答

1

Ignition支持使用Jython腳本從容器類型組件獲取.components中的GUI組件。

所以在最後,我對這個問題的解決方案的實施是:

for comp in rootcontainer.components: #looping through every component in the root container 
    if 'MySignal' in comp.name: #check the name of the component, see if it matches 
     #do the logic here