

userdef_d = Pmw.Dialog(self.master,
title="Programmer-Defined Dialog",
buttons=('Apply', 'Cancel'),
#defaultbutton='Apply',
command=userdef_dialog_action)
frame = userdef_d.interior()
# stack widgets in frame as you want...
...
def userdef_dialog_action(result):
if result == "Apply":
# extract dialog variables ...
else:
# you canceled the dialog
self.userdef_d.destroy() # destroy dialog window