标题:自动创建10个按钮,如何操作其中的一个按键?
作者:sanmaoljh
日期:2015-03-27 09:02
内容:
比如自动创建10了个按钮,序号(0~9),如果点击序号3的按钮,调用槽函数doClicked发送数据给linux的app,同时linux的app接收qt的数据,回发数据给qt按键,序号3的按键如何接收处理?
我如何找到序号3的按键?
如果这样定义buttons[10]数组的话,序号3的按键就是buttons[3]
for(int i =0; i < lbl_texts.size(); i++)
{
button = new QButton("",qw);
QButton *label= new QButton("",qw);
signalMapper->setMapping(button, i);//映射按键id号,范围0,1,2...
QObject::connect(button, SIGNAL(clicked()), signalMapper, SLOT(map()));
}
QObject::connect(signalMapper, SIGNAL(mapped(int)), g_be, SLOT(doClicked(int)));
#1 [gary0001 03-27 09:13]
你可使用QButtonGroup来实现这个功能。
把这十个按钮加入到一个组里面,设置好id,然后再建立信号槽就可以了。