ProgressMeter
The ProgressMeter is used to display progress to the User during lengthy operations. A horizontal "thermometer" with the percent complete inside is drawn.
Window Structure Details
- int x,y,w,h:
The extent of the thermometer.
- PLHRES Title: Title is a near pointer to a far pointer to the title of the meter.
- PLHDATA Data: Not used.
- UINT LogicalSize:
The denominator (total) of the fraction displayed as a percent. Selection is used as the numerator. That is, if LogicalSize=2048 and Selection=1024, the Meter would display 50%. LogicalSize should not be 0!
- UINT Style: PROGRESS_NOPERCENT allows a ProgressMeter that is empty inside. If that flag is clear (the default), a percent is displayed inside the meter.
- PLHWINDOW Parent: Used by the Object class handler.
- PLHFKEYS FKeys: Used by the Object class handler.
- PLHMENU Menu: Not used.
- UINT Selection:
The numerator of the percentage fraction. Selection/LogicalSize should be a "reasonable" int; that is, make sure that you can multiply Selection by 100 and divide by LogicalSize without giving overflows, truncation problems, or sign-extend errors.
- UINT WindowTop: Should be set to 0. This amount is subtracted from Selection to determine percentage.
Messages
- DRAW: Draws the meter. A DRAW_CLIENT or DRAW_CLIENT_UPDATE only updates the meter, not the title.
- CREATE: Sets the STYLE_NOFOCUS bit; ProgressMeters cannot recieve focus.
- SETFOCUS: Passed to the Object class handler.
- LOSEFOCUS: Passed to the Object class handler.
- NOTIFY: Passed to the Object class handler.
- APPEAR: Passed to the Object class handler.
- DISAPPEAR: Passed to the Object class handler.
- NULLEVENT: Passed to the Object class handler.
- DESTROY: Passed to the Object class handler.
- TERMINATE: Passed to the Object class handler.
- ACTIVATE: Passed to the Object class handler.
- DEACTIVATE: Passed to the Object class handler.
- COMMAND: Passed to the Object class handler.