請問該如何消除Ring的前次值

請問各位: 我使用Ring做選擇器,但是Ring會儲存上次選擇值並Display其代表的數值代號,請問我該如何消除呢?

謝謝各位的幫忙

可以create一個local variable在程式開始前預設一個想要的值即可

謝謝ancle的回覆

一開始我也設過初始值,但是我並不知道User會選擇那一個,我想是因為我敘述不夠清楚,因為我的Ring也是一個變數,我希望User在第一層選擇時,第二層Ring即時對應相對應的值,而不是出現之前Selector所儲存的Number,而是文字Display選項

附上範例提供大大參考:

TESTRING.vi

個人處理方式:

假如Ring1:只有幾種模式,假如只有二種模式

則Ring2分別建立Ring 2-1 及Ring2-2二種不同內容,

當Ring1選擇相對應的模式時,則打開不同的Ring2。

此方法不合適有多種模式選擇;

另一方法,是動能改變Edit Item內容,在VB內有ADD Item功能,在LV中我目前尚未學會,還請先進教我。  謝謝

你的對應值是什麼意思呢?可以把Ring1與Ring2的對應描述清楚一些嗎?

所謂的對應值是當選擇第一層Ring1(分為A及B),選A時Ring2會對應A1及A2,選B時Ring2會對應B1及B2

故選第二層Ring2時假設選A1,則Ring3會出現AA1及AA2;選A2則Ring3會出現AA10及AA11

第二層Ring2假設選B1,則Ring3會出現BB1及BB2;選B2則Ring3會出現BB10及BB11

以目前的寫法,皆可出現相對應的值,然而問題是front panel的Ring2及Ring3會出現前次被User選擇系統內所儲存的數字

如發文圖Ring3所出現的值

我希望假設我在選做Ring1選擇時,選A時,A1及A2會即時出現,且A1為打勾者,不會有出現前次儲存的值,其它類似此情況

不知是否有其他的大大可分享其經驗?

程式中Ring1與Ring2的選項都會影響Ring3,但你程式中只用Ring2的結果來看Ring3,所以會有問題,我修改了一下程式,你看和你需要的有相同嗎?

程式上傳有問題。等上傳正常了我再傳,不好意思囉!

TESTRING.vi   這是修改後的程式,是這樣的功能嗎?

剛剛看了一下Help裡面就有範例
Refer to the Ring and Combo Box VI in the
labview\examples\general\controls\ring.llb for an
example of using the Strings And Values [] property.

Ring Change Value String.vi

變更StringsAndValues之內容就可變更Ring之內容。
附上我做的範例 看看。ponytop39700.7284953704

回覆SunnyHJ大大:

謝謝你,我之前沒考慮過Ring1會影響到Ring3,我一直以為Ring3是因Ring2的影響,這個方式的確可以解決出現數字的問題,但是如何在切換Ring1時(假設為A),Ring2將以A1或B1為優先出現的值呢? 這個部份我還在Try。非常謝謝你的幫忙

 

回覆Ponytop大大:

你的程式我無法打開,因為我的Labview是7.1版,是否方便可以幫我轉成7.1版呢?

非常謝謝你

TESTRING.vi    這是你所說的功能嗎?

我只能轉到8.0版,還請其它高手轉一下。Ring Change Value String.vi

1.基本上你只要搞懂StringsAndValues[]是在做什麼就可以了。

2.再來你就是要考慮什麼時候代入才是合適,我看過你的程式,你想從編輯程式階段就要改變內容不是一個很好的方向,因你的user什麼時候改變,你並不知道;所以這就是你要處理的部份。

3.解決上面的問題你就可以依你的需求代入適當的值到你的程式中,方法有很多,圖中是我的其中一個方法。

[QUOTE=tinasss]

回覆Ponytop大大:

你的程式我無法打開,因為我的Labview是7.1版,是否方便可以幫我轉成7.1版呢?

非常謝謝你

[/QUOTE]

 

 

ponytop39701.412650463

回覆SunnyHJ大大:

你使用的方法我試過,雖然可出現初始值,但是其結果將造成Ring2無法選擇A2或B2,因為系統一直在填入A1或B1的值,也因無法選擇,故Ring3也無法輸出相對應的值,所以我還在Try

你的意思是,改變Ring1的選項時再將Ring2的選項做改變,否則Ring2維持原選項,是嗎?

我修改後的結果,是你所想的嗎?

TESTRING.vi

回覆SunnyHJ大大:

是的,這就是我想要的功能,依你的方式我也將此模式copy至下一Step,並加入Or gate來判斷,已經可以Run出我想要的結果了

由於我原本的程式在這區塊已差不多完成,故需要以此模式再加以修改;原本想要小修改一下即可,看來可能要大修一下 >_<

謝謝各位大大的幫忙

附上我略修後的程式

TESTRING_final.vi