1) sender(), oder besser
2) QSignalMapper.
3) Noch besser: eigene Slots pro action, auch wenn du eigene Methoden deklarieren musst. Wenn du Angst wegen Codeduplizierung hast, kannst du ja auch einfach entsprechenden Code in eine eigene Funktion auslagern.
4) Oder du schreibst dir eine Funktion "testSlotImpl(int,int)", in der du je nach Parameter andere Sachen machst, dann machst du pro action einen SLOT, in dem du dann testSlotImpl aufrufst, mit den passenden Parametern.
Ich rate zu 3), da hier am besten erweitert werden kann. Wenn dein Programm wächst und neue Actions dazu kommen, musst du immer schauen, wie du das jetzt in deine eine SLOT-Methode integrierst. Das wird unübersichtlich und fehleranfällig. Außerdem ist es schlechtes Design
