VB3 How to Create a System-Modal Program/WindowID: Q72674
|
From a Microsoft Visual Basic for Windows program, you can disable the ability to switch to other Windows programs by calling the Windows API
function SetSysModalWindow.
Microsoft Windows is designed so that the user can switch between
applications without terminating one program to run another program.
There may be times when the program needs to take control of the
entire environment and run from only one window, restricting the user
from switching to any other application. An example of this is a
simple security system, or a time-critical application that may need
to go uninterrupted for long periods of time.
Passing the handle to the window through the argument of
SetSysModalWindow will limit the user to that particular window. This
will not allow the user to move to any other applications with the
mouse or use ALT+ESC or CTRL+ESC to bring up the Task Manager. You can
even remove the system menu if you do not want the user to exit
through the ALT+F4 (Close) combination.
All child windows that are created by the system-modal window become
system-modal windows. When the original window becomes active again,
it is system-modal. To end the system-modal state, destroy the
original system-modal window.
Care must be taken when using the SetSysModalWindow API from within
the Visual Basic for Windows programming environment. Pressing
CTRL+BREAK to get to the [break] mode leaves your modal form with no
way to exit unless you restart your system. When using the
SetSysModalWindow within the environment, be sure to exit your
application by destroying the window with either the ALT+F4 in the
system menu, or by some other means from within your running program.
To use the SetSysModalWindow API function, declare the API call in
your global section, as follows:
Declare Function SetSysModalWindow Lib "User" (ByVal hwnd%) As Integer
Success% = SetSysModalWindow(hwnd)
Additional query words: 2.00 3.00 dialog vb3only
Keywords :
Version : 1.00 2.00 3.00
Platform : WINDOWS
Issue type :
Last Reviewed: June 17, 1999