Using roles means the dialog button box can decide on the placement of buttons depending on the platform specific needs.
I.e. you don't need to manually create and layout buttons.

You can either connect to buttons explicitly or connect to the box signals.

For the former it really doesn't matter if you connect to the button right after adding it or later retrieving it unless you require to connect later.

Cheers,
_