Hi Zayidu,
please refer the following piece of code.....
TABLES: sscrfields.
SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME
TITLE text-001.
PARAMETERS: p_mail TYPE catsxt_sf_email.
PARAMETERS: p_mail1 TYPE catsxt_sf_email.
PARAMETERS: p_mail2 TYPE catsxt_sf_email.
PARAMETERS: p_mail3 TYPE catsxt_sf_email.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN PUSHBUTTON (20) w_button USER-COMMAND but1.
SELECTION-SCREEN END OF LINE.
SELECTION-SCREEN END OF BLOCK block1.
DATA: c_tabix TYPE xflag.
INITIALIZATION.
* Add displayed text string to buttons
w_button = 'Add'.
**********************************************************************
* AT SELECTION-SCREEN OUTPUT
**********************************************************************
AT SELECTION-SCREEN OUTPUT.
IF c_tabix IS INITIAL.
LOOP AT SCREEN.
IF screen-name EQ '%_P_MAIL1_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL1'.
screen-active = 0.
ENDIF.
IF screen-name EQ '%_P_MAIL2_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL2'.
screen-active = 0.
ENDIF.
IF screen-name EQ '%_P_MAIL3_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL3'.
screen-active = 0.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
c_tabix = 'X'.
ENDIF.
AT SELECTION-SCREEN.
* Check if buttons have been
IF sscrfields-ucomm EQ 'BUT1'.
LOOP AT SCREEN.
IF screen-name EQ '%_P_MAIL1_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL1'.
screen-active = 1.
ENDIF.
IF screen-name EQ '%_P_MAIL2_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL2'.
screen-active = 1.
ENDIF.
IF screen-name EQ '%_P_MAIL3_%_APP_%-TEXT' OR screen-name EQ 'P_MAIL3'.
screen-active = 1.
ENDIF.
MODIFY SCREEN.
ENDLOOP.
ENDIF.