qt 下 默认connect 中的SIGNAL(clicked()),默认的SLOT on_pushButton_clicked(),是要执行两次的,这是你只要将on_pushButton_clicked()改掉就行了。
例如:
connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(on_pushButton_clicked()));
QList<QString> collectlist;
collectlist<<"addr1"<< "addr2"<<"addr3"<<"addr4"<<"<<"addr6" ;
void MainWindow::on_pushButton_clicked()
{
int a=collectlist.size();//
QString b;
b=QString::number(a);
qDebug()<<"length ="+b;}
其中: qDebug()打印为,
"length =6"
"length =6"
也就是说on_pushButton_clicked()执行了两次,只是只要将on_pushButton_clicked()改个名字就行了,如pushButton_clicked()就可以。
注:
如果用QTcreator designer 信号槽已经自动连接好了,不用再
connect(ui->pushButton,SIGNAL(clicked()),this,SLOT(on_pushButton_clicked()));