so, the problem is: on_pushButton_clicked() is called twice, because if you use such kind of slot naming on_pushButton_clicked then you don't need to connect it manually, because it will be made automatically. so, in your case two connections were created.
so, you need to comment these connections
connect(pushButton, SIGNAL(clicked()), this, SLOT(on_pushButton_clicked()));
connect(pushButton, SIGNAL(clicked()), this, SLOT(on_pushButton_clicked()));
connect(pushButton, SIGNAL(clicked()), this, SLOT(on_pushButton_clicked()));
connect(pushButton, SIGNAL(clicked()), this, SLOT(on_pushButton_clicked()));
To copy to clipboard, switch view to plain text mode
or rename slots.
see this for more details QMetaObject::connectSlotsByName.
PS. please, use tags CODE.
Bookmarks