class MyClass : ... { ... public slots: void onWrite( qint64 ); }; MyClass::MyClass( ... ) { // ... progress->setMaximum( QFileInfo(fromFile).size() / 1024 ); written = 0; connect( &toFile, SIGNAL(bytesWritten(qint64)), SLOT(onWrite(qint64)) ); // ... } void MyClass::onWrite( qint64 w ) { written += w; progress->setValue( written / 1024 ); }