c++ - 如何将多个参数传递给 qt5 中的 SLOT 函数?

标签 c++ qt arguments qt5 signals-slots

作为示例,我有一个函数

void MyClass::foo( int i, int j ){ cout << i+j; }

我希望一个信号在类的某个函数上执行一个槽

connect( Object, SIGNAL( mysignal() ), SLOT( this->foo(1,2) ) );

使用一个参数它的工作,但显示插槽上的 2 个或更多参数的错误。

最佳答案

QT 在信号和槽方面有很好的文档 http://qt-project.org/doc/qt-5/signalsandslots.html , 请确保您理解语法。在您的情况下,它将类似于

connect( pointerToObjectEmittingTheSignal, SIGNAL(my_signal(int, int) ), 
         this, SLOT(my_slot(int, int));

此外,您的信号声明应采用 intint 类型的两个参数

signals:
     void my_signal(int, int);

关于c++ - 如何将多个参数传递给 qt5 中的 SLOT 函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25173869/

相关文章:

java - 返回第一个参数的函数有什么用?

c++ - 具有完全透明背景的qt小部件

c++ - 涉及 char 和 if 语句的快速帮助

c++ - 无法将 QButtonGroup buttonClicked 连接到仿函数

c++ - 将数字格式化为特定的 QString 格式

matlab - 如何应用带有常量额外输入参数的 cellfun(或 arrayfun 或 structfun)?

python - 命令行参数 - 设置运行 Python 代码时的超时限制

c++ - boost asio ssl::stream<tcp::socket> 是否支持多个挂起的 http::async_write 调用?

c++ - 如何在基类中获取派生类的子类型

c++ - QSqlQuery 没有正确回答