gpt4 book ai didi

c++ - 将参数绑定(bind)到信号/槽

转载 作者:可可西里 更新时间:2023-11-01 15:37:43 26 4
gpt4 key购买 nike

我基本上有多个事件信号,我想连接到同一个插槽。我想知道的是如何将基于字符串的参数传递给同一个槽,以便槽知道这个信号来自哪个槽。一种替代方法是制作与信号一样多的槽,然后以 1:1 的方式连接它们,但考虑到所有处理的代码非常相似,这种方法很有效。我试过这样做,但出现了一些错误:

connect(selecter1,SIGNAL(selected(QString)),this,SLOT(backgroundTypeChoiceMade(QString)));
connect(button1,SIGNAL(clicked()),this,SLOT(backgroundTypeChoiceMade("button1")));
connect(button2,SIGNAL(clicked()),this,SLOT(backgroundTypeChoiceMade("button2")));

错误与我在最后 2 个命令中传递的参数有关。backgroundTypeChoiceMade 声明如下:

void backgroundTypeChoiceMade(QString);

谁能告诉我上面代码中的错误是什么?

最佳答案

您可以使用 QSignalMapper .尽管 QSignalMapper 是您问题的答案,但我认为 jon hanson 的答案是您应该采取的方式。这样你会得到更简洁的代码。

关于c++ - 将参数绑定(bind)到信号/槽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3166051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com