My Win32Forth API Class Libraries



These have been updated to correct possible problems with reentrancy and relocatable images.


To simplify things, this is a zip file that contains all of the source files below plus any necessary files (e.g., bitmaps, icons, etc.) needed to run the examples.


These three files form the basis for the files that follow. All three will need to be loaded prior to any examples in order to provide a top-level window in which to place the example controls (this is handled automatically in the example files using NEEDS).

WinBase.f -- Basic definitions used in the following files.
BasicWin.f -- Fundamental WIN32 API interface to window objects
ApplWin.f -- A generic application (top-level) window

Each of the pages that follows describes the operation of a single class which covers the operation of a particular kind of window or control. In some cases (e.g., buttons and listboxes) the files contain classes for each of the various types of the basic class. Each page will (eventually...) also contain a brief description/tutorial and an example.

Buttons.f -- Simple button controls
Combobox.f -- Various combo box controls
Editbox.f -- A multiline editbox
Listbox.f -- Various list box controls
Menubar.f -- Menubar and pop-up menu classes
Progbar.f -- Progress bar control
Statbar.f -- Status bar window
Static.f -- Static Controls (Text and Image)
Toolbar.f -- Application Toolbar control
Tooltip.f -- General Tooltip control
Trackbar.f -- Trackbar control
UpDown.f -- Up/Down (Spin) control
MonthCal.f -- Month Calendar (Date Picker) control

One of the things I like about Forth is that it allows for very interactive experimentation. This will be evident in how I wrote the above code. From the console you can create a window, add various controls and experiment with their position, add items to a list box, or pretty much anything else you like. This is how most of the examples will operate and this should make it easy for you to experiment with as well. After all, this is how I experimented with them to develop them in the first place.



Author: Jeff Kelm, (how to contact me)
URL: http://www.concentric.net/~jkelm/win32for/classidx2/newclass.htm
(Modified: 2005-01-07)