One decision you must make when designing a program is how it will be used. If the person using your program must interact with it, the method of interaction can be important. Anytime the user must supply data, that data must be validated or it could cause errors. One way to minimize data errors is to allow the user to select a value from a list. For example, if the data is one of several known values, the user can select the desired value instead of typing it in.
When you design programs to be interactive, you use a different structure than if you design them to be run in unattended batches. Interactive applications behave more like state machines than numerical algorithms, because they perform the actions you request when you request them. You may also find that once you can change what your program is doing while it runs, you will be more likely to experiment with it.
The QuickWin library lets you build simple Windows applications. Because QuickWin is a wrapper around a subset of the Windows API, there are limitations to what you can do, but it can fulfill the requirement of most users. If you need additional capabilities, you can call the Windows API directly rather than using QuickWin to build your program. You can also build a graphic user interface in either Microsoft* Visual C++* or Visual Basic* that calls your Fortran code.
QuickWin applications do not provide the total capability of Windows*-based applications. Although you can call many Windows APIs (Application Programming Interface) from QuickWin and console programs, many other Windows APIs (such as GDI functions) should be called only from a full Windows-based application. You need to use Windows-based applications, not QuickWin, if any of the following applies:
Your application has an OLE* (Object Linking and Embedding) container.
You want direct access to GDI (Graphical Data Interface) functions.
You want to add your own customized Help information to QuickWin Help.
You want to create something other than a standard SDI (Single Document Interface) or MDI (Multiple Document Interface) application. (For example, if you want your application to have a dialog such as Windows Calculator in the client area.)