0

我被困在以下问题上:

我有一个名为 PBVars 的 QWidget,其中包含许多由读取例程填充的行编辑。现在我想让用户有机会编辑一些字段而不必删除所有条目。为此,我想打开一个新对话框(名为 EGG)并将所有数据复制到 EGG 中。现在用户可以更改数据,单击“SaveValuesToGUI”并将值保存回 PBVars。这是可能的想法。

我设法从 PBVars -> EGG 读取所有数据。但我一直坚持从 EGG -> PBVars 创建一个信号槽连接。

PBVars.h:

...    
EGG *   egg ;

PBVars.cpp:

PBVars::PBVars(QWidget *parent) :
Tab(parent), ui(new Ui::PBVars)
{
 ....      
 egg = new EGG();
 }

  void PBVars::on_but_EditGeometry_clicked()
  {  ...
     // fill Values_from_PBVars here
     egg->show();
     egg->setLneEdits(Values_from_PBVars);
   }

我在哪里以及如何编写连接。我觉得应该有点像

  connect(  egg ???, SIGNAL(on_pb_sendValuesToPropBasic_clicked()), 
        this, SLOT(write_GGE_ToPBVars(qsl) ));

其中 qsl 是带有 egg 编辑值的字符串列表。

有人可以帮帮我吗?谢谢 !!

4

1 回答 1

3

如果您希望连接传输数据,则必须在信号和插槽中具有匹配的参数:

void someSignal(int)
...
void someSlot(int i) { ...use i here... }

并且在您发出信号时指定实际参数emit someSignal(someInt)

于 2016-04-28T10:38:03.930 回答