A slot can never have more arguments than the signal it is connected to.
How would the computer know at the point of the emit which value to pass?
Couple of options:
You can store the string in a member of mainwindow.
You can store the string as a dynamic property on the QPrinter.
You could delegate printing to an instance of a specialized class that has the string to print as its member.
Cheers,
_
Bookmarks