From an evolutionary perspective, dialogs lie between windows and frames. Dialogs share many of the amenities found in frames, but they lack the frame's status as being a fully operational application window. Dialogs cannot support menubars or be iconified, two essentials of application window functionality.
However, dialogs do have something that windows and frames do not—modality. Dialogs can be either modal or nonmodal, and before we go any further, let's define what that means. Being modal means blocking two things:
Input to other windows
When a modal dialog is shown, input is blocked to all other windows in the dialog's ancestry. Also, execution of the thread that showed the dialog is blocked until the ...