Unlike Check boxes and Radio buttons, Buttons do not have a state. They do not hold the value of being pushed or not pushed. When the user clicks on a Button with the mouse, the Button's callback routine is called. Thus, the purpose of a Button is to initiate an action. The external procedure you assign as a callback determines the action initiated. For example:
LOGICAL retlog EXTERNAL DisplayTime retlog = DlgSetSub( dlg, IDC_BUTTON_TIME, DisplayTime)
Intel Visual Fortran dialog routines do not support user-drawn Buttons.