CONTROL KILL statement

Purpose | Remove a control from a dialog.
Syntax | CONTROL KILL hDlg, id&
Remarks | hDlg refers to the dialog that owns the control. id& is the unique control identifier as assigned to the control with a CONTROL ADD statement. The control is destroyed and removed from the dialog. The Callback Function for the control or dialog will no longer receive messages for the control.
Restrictions | A control should not be destroyed while processing a notification message from the same control, but it is permissible to kill a different control in the notification handler. If is absolutely necessary to kill a control while processing one of its notification messages, use the PostMessage API function (or the DIALOG POST or CONTROL POST statements) to post a user-defined message to the dialog callback, and kill the control when processing the user-defined message.
See also | Dynamic Dialog Tools, CONTROL DISABLE, CONTROL ENABLE
Example | ' How to avoid "suicide" conditions CALLBACK FUNCTION DlgCallBack() AS LONG SELECT CASE CB.MSG CASE %WM_COMMAND IF CB.CTLMSG = %BN_CLICKED AND CB.CTL = %MyBtn THEN DIALOG POST CB.HNDL, %WM_USER + 999&, 0, 0 END IF CASE %WM_USER + 999& CONTROL KILL CB.HNDL, %MyBtn FUNCTION = 1 END SELECT END FUNCTION