Qt简单的按钮槽函数传递参数方法
Qt中一个典型的点击按钮触发槽函数的写法是:
connect(btn, &QPushButton::clicked, this, &class::func);
当你希望在点击按钮后再向槽函数中传递参数,这种写法就无法做到了。其原因是槽函数要和信号的参数完全对应,如果修改了传给槽函数的参数,点击按钮的信号就无法处理。
这里给出一个比较简单的传参方法,在信号槽中使用lambda表达式,如:
connect(btn, &QPushButton::clicked, this, [=](){func(i);});
根据参数的数量对应修改func(i)里面的内容,这里只能传单个参数。