2014-10-06 54 views
-1

我有一個屬性是eclipse中的一個結構。我如何呼叫聽衆來了解結構中的特定字段已更改。同樣,如果我有一個屬性是一系列結構,我怎麼知道哪個結構發生了變化以及結構中哪個字段發生了變化。如何調用結構和序列結構的偵聽器?

我在Linux中使用C++。

該結構屬性被命名爲MyStruct。成員字段是MyField1和MyField2。我正在使用

setPropertyChangeListener(「MyStruct」,this,& MyComponent_i :: myStrutChanged);

setPropertyChangeListener(「MyStruct.MyField1」,this, & MyComponent_i :: myStructField1Changed);

setPropertyChangeListener(「MyStruct.MyField2」,this,& MyComponent_i :: myStructField2Changed);

如果字段發生更改,則調用setPropertyChangeListener(「MyStruct」,this,& MyComponent_i :: myStrutChanged)。我需要知道哪個領域改變了。

我也有一個屬性,這是一個名爲MySeq的結構序列。該結構有兩個成員字段名稱SeqField1和SeqField2。我正在使用

setPropertyChangeListener(「MySeq」,this,& MyComponent_i :: mySeqChanged);

setPropertyChangeListener(「MySeq [1]」,this,& MyComponent_i :: mySeqChanged_1);

setPropertyChangeListener(「MySeq [1] .SeqField1」,this,& MyComponent_i :: mySeqChanged_1_field1);

setPropertyChangeListener(「MySeq [1] .SeqField2」,this,& MyComponent_i :: mySeqChanged_1_field2);

如果在結構中的一個字段被改變,setPropertyChangeListener(「」 MySeq」,對此,& MyComponent_i :: mySeqChanged)被調用。我需要知道哪些結構改變和結構內場被改變。

+0

可以擴大問題?用什麼語言,你到目前爲止嘗試了什麼?也許提供一段代碼 – Micer 2014-10-06 16:06:58

+0

你使用的是什麼版本的REDHAWK? – pwolfram 2014-10-16 20:52:26

回答

0

我建議你創建的結構類型,你可以與輸入(改變)結構對比的私有成員變量。然後,您可以在田野步驟,以確定哪些領域發生變化。

+0

謝謝你看我的問題。我的代碼已經按照你的建議做了,但是我正在尋找一種自動,快速的方式來做這件事,因爲我的應用程序需要很快。 – Cat 2014-10-30 17:12:54