-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 的结构序列。该结构有 2 个成员字段,名称为 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", this, &MyComponent_i::mySeqChanged)。我需要知道更改了哪个结构以及更改了结构中的哪个字段。

4

1 回答 1

0

我建议您创建一个结构类型的私有成员变量,您可以将其与传入(更改的)结构进行比较。然后,您可以逐步浏览字段以确定更改的字段。

于 2014-10-30T13:12:35.983 回答