home *** CD-ROM | disk | FTP | other *** search
- SECTION 9 - Windows API
-
- This document contains information that is most often provided
- to users of this section. There is a listing of common
- Technical Information Documents that can be downloaded from the
- libraries, and a listing of the five most frequently asked
- questions and their answers.
-
- TI607 How to print in windows.
-
- Q. "How can I enable or disable a particular control in a
- dialog box?"
-
- A. Use the EnableWindow(Wnd: Hwnd, Enable: Bool) API function.
- It takes two parameters, the handle to the window (remember
- a control is a window) to be enabled/disabled and a boolean
- value - True for enable and False for disable.
-
- Q. "How do I obtain the handle or ID of a control?"
-
- A. If you have a pointer to a control object, OWL will give you
- the window handle automatically through the HWindow field;
- PointerToMyControl^.HWindow is the window handle.
-
- If you know the handle of a control, you can obtain the ID
- by calling the GetDlgCtrlID() API function:
-
- ControlID := GetDlgCtrlID(ControlHandle);
-
- If you don't have a pointer to your control, but know the ID
- of a control, you can obtain the handle by calling the
- GetDlgItem() API function:
-
- ControlHandle := GetDlgItem(DialogHandle, ControlID);
-
- Q. "How do I unload an abnormally terminated program's dlls?"
-
- A. By using GetModuleHandle to return the dll's handle, and
- then call freelibrary until GetModuleHandle returns 0. If a
- dll has loaded another dll, unload the child dll first.
-
- Q. "How do I hide a minimized icon without taking the program
- off the task list?"
-
- A. Move the icon off the display using SetWindowPos or
- MoveWindow and give negative coordinate values beyond the
- screen.
-
- Q. "How do I change a dll's data segment from fixed to
- movable?"
-
- A. Call GlobalPageUnloch(DSEG) in the outer block of your dll.
- This will work providing the dll does not contain code that
- requires a page locked data segment.
-
-