PICS Dial Direction Property
	Direction Property
Returns or sets the direction (clockwise or counter-clockwise) that a Dial control is turned to increase the value.

Syntax

Visual Basic	object.Direction [= direction]

Visual C++	short object.GetDirection();

object.SetDirection(short direction);

The Direction property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

direction	A numeric expression that indicates the direction the Dial control is turned to increase its value.

Settings

The settings for the Direction property are:

Setting	Description

0	(Default) Clockwise. Turning the dial control in a clockwise direction will cause the value of the control to increase.

1	Counter Clockwise. Turning the dial control in a clockwise direction will cause the value of the control to decrease.


PICS Dial Enabled Property
	Enabled Property
Returns or sets a value that determines whether a form or control can respond to user-generated events.

Syntax

Visual Basic	object.Enabled [= boolean]

Visual C++	BOOL object.GetEnabled();

object.SetEnabled(BOOL boolean);

The Enabled property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

boolean	A Boolean expression that specifies whether object can respond to user-generated events.

Settings

The settings for boolean are:

Setting	Description

True	(Default) Allows object to respond to events.

False	Prevents object from responding to events.

Remarks

The Enabled property allows forms and controls to be enabled or disabled at run time.  For example, you can disable objects that don't apply to the current state of the application.  You can also disable a control used purely for display purposes, such as a text box that provides read-only information.


PICS Dial hWnd Property
	hWnd Property
Returns a handle to a Dial control. Read-only at run time, not available at design time.

Syntax

Visual Basic	object.hWnd

Visual C++	OLE_HANDLE object.GetHWnd();

The object placeholder represents an object expression that evaluates to Dial control.

Remarks

The Microsoft Windows operating environment identifies each form and control in an application by assigning it a handle, or hWnd. The hWnd property is used with Windows API calls. Many Windows operating environment functions require the hWnd of the active window as an argument.

Note  Because the value of this property can change while a program is running, never store the hWnd value in a variable.


PICS Dial MaximumRange Property
	MaximumRange Property
Returns or sets the value of the maximum range of the Dial control.  The Value property can never exceed this value.

Syntax

Visual Basic	object.MaximumRange [= newvalue]

Visual C++	long object.GetMaximumRange();

object.SetMaximumRange(long newvalue);

The MaximumRange property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

newvalue	A numeric expression that represents the largest value that the Dial control can be set to.

Remarks

The Value property must be between the MinimumRange MaximumRange property values.


PICS Dial MaximumTurnRange Property
	MaximumTurnRange Property
Returns or sets the maximum value, in degrees, of the cursor of the Dial control.  The cursor is displayed as a red dot on the Dial control.

Syntax

Visual Basic	object.MaximumTurnRange [= newvalue]

Visual C++	long object.GetMaximumTurnRange();

object.SetMaximumTurnRange(long newvalue);

The MaximumTurnRange property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

newvalue	A numeric expression that specifies the position, in degrees, that represents the maximum position that the dial can turn.

Remarks

By default, the dial can turn from a range of -45o for the minimum position, to 255o for the maximum position. You may specify any values between -359o to +359o for the minimum and maximum turn range values.


PICS Dial MinimumRange Property
	MinimumRange Property
Returns or sets the value of the minimum range of the Dial control.  The Value property can never fall below this value.

Syntax

Visual Basic	object.MinimumRange [= newvalue]

Visual C++	long object.GetMinimumRange();

object.SetMinimumRange(long newvalue);

The MinimumRange property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

newvalue	A numeric expression that represents the smallest value that the Dial control can be set to.

Remarks

The Value property must be between the MinimumRange and MaximumRange property values.


PICS Dial MinimumTurnRange Property
	MinimumTurnRange Property
Returns or sets the minimum value, in degrees,  of the cursor of the Dial control.  The cursor is displayed as a red dot on the Dial control.

Syntax

Visual Basic	object.MinimumTurnRange [= newvalue]

Visual C++	long object.GetMinimumTurnRange();

object.SetMinimumTurnRange(long newvalue);

The MinimumTurnRange property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

newvalue	A numeric expression that specifies the position, in degrees, that represents the minimum position that the dial can turn.

Remarks

By default, the dial can turn from a range of -45o for the minimum position, to 255o for the maximum position. You may specify any values between -359o to +359o for the minimum and maximum turn range values.


PICS Dial Value Property
	Value Property
Returns or sets the value of the current position of the Dial control..

Syntax

Visual Basic	object.Value [= newvalue]

Visual C++	long object.GetValue();

object.SetValue(long newvalue);

The Value property syntax has these parts:

Part	Description

object	An object expression that evaluates to a Dial control.

newvalue	A numeric expression that represents the current position of the Dial control.

Remarks

The value property must be between the MinimumRange and MaximumRange property values.


PICS Dial AboutBox Method
	AboutBox Method
Use the About command to find the version number and other pertinent information about PICS.


PICS Dial Click Event
	Click Event
Occurs when the user presses and then releases a mouse button over an object.  It can also occur when the value of a control is changed.

Syntax

Visual Basic	Private Sub Object_Click([index As Integer])

Visual C++	void OnClickObject();

The Click event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	An integer that uniquely identifies a control if it's in a control array.

Remarks

For a control, this event occurs when the user:

•	Clicks a control with the left or right mouse button.  With a 3D check box, 3D command button, or 3D option button control, the Click event occurs only when the user clicks the left mouse button.

•	Presses the SPACEBAR when a 3D command button, 3D option button, or 3D check box control has the focus.

•	Presses ENTER when a form has a 3D command button control with its Default property set to True.

•	Presses ESC when a form has a Cancel buttonfor example, a 3D command button control with its Cancel property set to True.

•	Presses an access key for a control.  For example, if the caption of a 3D command button control is "&Go", pressing ALT+G triggers the event.

Typically, you attach a Click event procedure to a 3D command button control to carry out commands and command-like actions.  For the other applicable controls, use this event to trigger actions in response to a change in the control.

Note   To distinguish between the left, right, and middle mouse buttons, use the MouseDown and MouseUp events.


PICS Dial DblClick Event
	DblClick Event
Occurs when the user presses and releases a mouse button and then presses and releases it again over an object.

Syntax

Visual Basic	Private Sub Object_DblClick([index As Integer])

Visual C++	void OnDblClickObject();

The Click event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	An integer that uniquely identifies a control if it's in a control array.

Remarks

The argument Index uniquely identifies a control if it's in a control array.  You can use a DblClick event procedure for an implied action, such as double-clicking an icon to open a window or document.  You can also use this type of procedure to carry out multiple steps with a single action, such as double-clicking to select an item in a list box and to close the dialog box.

For those objects that receive Mouse events, the events occur in this order: MouseDown, Click, MouseUp, and DblClick.

If DblClick doesn't occur within the system's double-click time limit, the object recognizes another Click event.  The double-click time limit may vary because the user can set the double-click speed in the Control Panel.  When you're attaching procedures for these related events, be sure that their actions don't conflict.

Note   To distinguish between the left, right, and middle mouse buttons, use the MouseDown and MouseUp events.


PICS Dial EndScroll Event
	EndScroll Event
Occurs after the user turns the Dial control.

Syntax

Visual Basic	object_EndScroll(Position As Integer, TurnDial As Boolean)

Visual C++	short OnEndScrollobject(short Position, BOOL& TurnDial);

The EndScroll event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.

Remarks

When the user ends a scrolling action (i.e., releases the mouse, or releases an scrolling key) this event is sent.


PICS Dial KeyDown Event
	KeyDown Event
Fired each time a key is pressed when the Dial object has input focus.

Syntax

Visual Basic	Private Sub Object_KeyDown([index As Integer,] KeyCode As Integer, Shift As Integer)

Visual C++	void OnKeyDownObject(short FAR* KeyCode, short Shift);

The KeyDown event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	An integer that uniquely identifies a control if it's in a control array.

KeyCode	A key code, such as vbKeyF1 (the F1 key) or vbKeyHome (the HOME key).  To specify key codes, use the constants in the object library in the Object Browser.

Shift	An integer that corresponds to the state of the SHIFT, CTRL, and ALT keys at the time of the event. The Shift argument is a bit field with the least-significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2).  These bits correspond to the values 1, 2, and 4, respectively.  Some, all, or none of the bits can be set, indicating that some, all, or none of the keys are pressed.  For example, if both CTRL and ALT are pressed, the value of Shift is 6.

Remarks

The object with the focus receives all keystrokes. Although the KeyDown and KeyUp events can apply to most keys, they're most often used for:

•	Extended character keys such as function keys.

•	Navigation keys.

•	Combinations of keys with standard keyboard modifiers.

•	Distinguishing between the numeric keypad and regular number keys.

Use KeyDown and KeyUp event procedures if you need to respond to both the pressing and releasing of a key.

KeyDown and KeyUp aren't invoked for:

•	The ENTER key if the form has a 3D command button control with the Default property set to True.

•	The ESC key if the form has a 3D command button control with the Cancel property set to True.

•	The TAB key.

KeyDown and KeyUp interpret the uppercase and lowercase of each character by means of two arguments: KeyCode, which indicates the physical key (thus returning A and a as the same key) and Shift, which indicates the state of shift+key and therefore returns either A or a.

If you need to test for the Shift argument, you can declare constants that define the bits within the argument by using constants listed in the object library in the Object Browser.  The shift constants have the following values:

Constant	Value

vbShiftMask	1

vbCtrlMask	2

vbAltMask	4

The constants act as bit masks that you can use to test for any combination of keys.  Place the constants at the procedure level or in the Declarations section of a module and use this syntax:

Const constantname = expression

You test for a condition by first assigning each result to a temporary integer variable and then comparing Shift to a bit mask.  Use the And operator with the Shift argument to test whether the condition is greater than 0, indicating that the modifier was pressed, for example:

ShiftDown = (Shift And vbShiftMask) > 0

In a procedure, you can test for any combination of conditions, for example:

If ShiftDown And CtrlDown Then

Note   If the KeyPreview property is set to True, a form receives these events before controls on the form receive the events.  Use the KeyPreview property to create global keyboard-handling routines.


PICS Calendar KeyPress Event
	KeyPress Event
Fired each time a key is pressed when the Calendar object has input focus.

Syntax

Visual Basic	Private Sub Object_KeyPress([index As Integer,] KeyAscii As Integer)

Visual C++	void OnKeyPressObject(short FAR* KeyAscii);

The KeyPress event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Calendar object.

index	An integer that uniquely identifies a control if it's in a control array.

KeyAscii	An integer that returns a standard numeric ANSI keycode.  The KeyAscii argument is passed by reference; changing it sends a different character to the object.  Changing KeyAscii to 0 cancels the keystroke so the object receives no character.

Remarks

The object with the focus receives the event.  A form can receive the event only if it has no visible and enabled controls or if the KeyPreview property is set to True.  A KeyPress event can involve any printable keyboard character, the CTRL key combined with a character from the standard alphabet or one of a few special characters, and the ENTER or BACKSPACE key. Changing the value of the KeyAscii argument changes the character displayed.

You can convert the KeyAscii argument into a character by using the expression:

Chr(KeyAscii)

You can then perform string operations and translate the character back to an ANSI number that the control can interpret by using the expression:

KeyAscii = Asc(char)

Use KeyDown and KeyUp event procedures to handle any keystroke not recognized by KeyPress, such as function keys, editing keys, navigation keys, and any combinations of these with keyboard modifiers.  Unlike the KeyDown and KeyUp events, KeyPress doesn't indicate the physical state of the keyboard; instead, it passes a character.

KeyPress interprets the uppercase and lowercase of each character as separate key codes and, therefore, as two separate characters.  KeyDown and KeyUp interpret the uppercase and lowercase of each character by means of two arguments: keycode, which indicates the physical key (thus returning A and a as the same key), and shift, which indicates the state of shift+key and therefore returns either A or a.

If the KeyPreview property is set to True, a form receives the event before controls on the form receive the event.  Use the KeyPreview property to create global keyboard-handling routines.

Note   The ANSI number for the keyboard combination of CTRL+@ is 0.  Because Visual Basic recognizes a KeyAscii value of 0 as a zero-length string (""), avoid using CTRL+@ in your applications.


PICS Calendar KeyUp Event
	KeyUp Event
Fired each time a key is released when the Calendar object has input focus.

Syntax

Visual Basic	Private Sub Object_KeyUp([index As Integer,] KeyCode As Integer, Shift As Integer)

Visual C++	void OnKeyUpObject(short FAR* KeyCode, short Shift);

The KeyUp event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Calendar object.

index	An integer that uniquely identifies a control if it's in a control array.

KeyCode	A key code, such as vbKeyF1 (the F1 key) or vbKeyHome (the HOME key).  To specify key codes, use the constants in the object library in the Object Browser.

Shift	An integer that corresponds to the state of the SHIFT, CTRL, and ALT keys at the time of the event. The Shift argument is a bit field with the least-significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2).  These bits correspond to the values 1, 2, and 4, respectively.  Some, all, or none of the bits can be set, indicating that some, all, or none of the keys are pressed.  For example, if both CTRL and ALT are pressed, the value of Shift is 6.

Remarks

The object with the focus receives all keystrokes. Although the KeyDown and KeyUp events can apply to most keys, they're most often used for:

•	Extended character keys such as function keys.

•	Navigation keys.

•	Combinations of keys with standard keyboard modifiers.

•	Distinguishing between the numeric keypad and regular number keys.

Use KeyDown and KeyUp event procedures if you need to respond to both the pressing and releasing of a key.

KeyDown and KeyUp aren't invoked for:

•	The ENTER key if the form has a 3D command button control with the Default property set to True.

•	The ESC key if the form has a 3D command button control with the Cancel property set to True.

•	The TAB key.

KeyDown and KeyUp interpret the uppercase and lowercase of each character by means of two arguments: KeyCode, which indicates the physical key (thus returning A and a as the same key) and Shift, which indicates the state of shift+key and therefore returns either A or a.

If you need to test for the Shift argument, you can declare constants that define the bits within the argument by using constants listed in the object library in the Object Browser.  The shift constants have the following values:

Constant	Value

vbShiftMask	1

vbCtrlMask	2

vbAltMask	4

The constants act as bit masks that you can use to test for any combination of keys.  Place the constants at the procedure level or in the Declarations section of a module and use this syntax:

Const constantname = expression

You test for a condition by first assigning each result to a temporary integer variable and then comparing Shift to a bit mask.  Use the And operator with the Shift argument to test whether the condition is greater than 0, indicating that the modifier was pressed, for example:

ShiftDown = (Shift And vbShiftMask) > 0

In a procedure, you can test for any combination of conditions, for example:

If ShiftDown And CtrlDown Then

Note   If the KeyPreview property is set to True, a form receives these events before controls on the form receive the events.  Use the KeyPreview property to create global keyboard-handling routines.


PICS Dial LineDown Event
	LineDown Event
Occurs when the user presses the Down Arrow key while the Dial control has input focus, or clicks the button on the dial with the minus symbol on it.

Syntax

Visual Basic	object_LineDown(Position As Integer, TurnDial As Boolean)

Visual C++	short OnLineDownobject(short Position, BOOL& TurnDial);

The LineDown event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.


PICS Dial LineUp Event
	LineUp Event
Occurs when the user presses the Up Arrow Page Down key while the Dial control has input focus or clicks the button on the dial with the plus symbol on it.

Syntax

Visual Basic	object_LineUp(Position As Integer, TurnDial As Boolean)

Visual C++	short OnLineUpobject(short Position, BOOL& TurnDial);

The LineUp event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.


PICS Dial MouseDown Event
	MouseDown Event
Occur when the user presses (MouseDown) or releases (MouseUp) a mouse button.

Syntax

Visual Basic	Private Sub Object_MouseDown([index As Integer,] Button As Integer, Shift As Integer, x As Single, y As Single)

Visual C++	void OnMouseDownObject(short Button, short Shift, long x, long y);

The MouseDown event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	Returns an integer that uniquely identifies a control if it's in a control array.

Button	Returns an integer that identifies the button that was pressed (MouseDown) or released (MouseUp) to cause the event.  The Button argument is a bit field with bits corresponding to the left button (bit 0), right button (bit 1), and middle button (bit 2).  These bits correspond to the values 1, 2, and 4, respectively.  Only one of the bits is set, indicating the button that caused the event.

Shift	Returns an integer that corresponds to the state of the SHIFT, CTRL, and ALT keys when the button specified in the Button argument is pressed or released.  A bit is set if the key is down.  The shift argument is a bit field with the least-significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2 ).  These bits correspond to the values 1, 2, and 4, respectively.  The Shift argument indicates the state of these keys.  Some, all, or none of the bits can be set, indicating that some, all, or none of the keys are pressed.  For example, if both CTRL and ALT were pressed, the value of shift would be 6.

x, y	Returns a number that specifies the current location of the mouse pointer.  The x  and y values are always expressed in terms of the coordinate system set by the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties of the object.

Remarks

Use a MouseDown or MouseUp event procedure to specify actions that will occur when a given mouse button is pressed or released.  Unlike the Click and DblClick events, MouseDown and MouseUp events enable you to distinguish between the left, right, and middle mouse buttons.  You can also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keyboard modifiers.

The following applies to both Click and DblClick events:

•	If a mouse button is pressed while the pointer is over a control, that object "captures" the mouse and receives all mouse events up to and including the last MouseUp event.  This implies that the x, y mouse-pointer coordinates returned by a mouse event may not always be in the client area of the object that receives them.

•	If mouse buttons are pressed in succession, the object that captures the mouse after the first press receives all mouse events until all buttons are released.

If you need to test for the button or shift arguments, you can use constants listed in the object library in the Object Browser to define the bits within the argument:

Constant	Value	Description

vbLeftButton	1	Left button is pressed.

vbRightButton	2	Right button is pressed.

vbMiddleButton	4	Middle button is pressed.

vbShiftMask	1	SHIFT key is pressed.

vbCtrlMask	2	CTRL key is pressed.

vbAltMask	4	ALT key is pressed.

The constants then act as bit masks you can use to test for any combination of buttons without having to figure out the unique bit field value for each combination.


PICS Dial MouseMove Event
	MouseMove Event
Occurs when the user moves the mouse.

Syntax

Visual Basic	Private Sub Object_MouseMove([index As Integer,] Button As Integer, Shift As Integer, x As Single, y As Single)

Visual C++	void OnMouseMoveObject(short Button, short Shift, long x, long y);

The MouseDown event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	Returns an integer that uniquely identifies a control if it's in a control array.

Button	An integer that corresponds to the state of the mouse buttons in which a bit is set if the button is down.  The Button argument is a bit field with bits corresponding to the left button (bit 0), right button (bit 1), and middle button (bit 2).  These bits correspond to the values 1, 2, and 4, respectively.  It indicates the complete state of the mouse buttons; some, all, or none of these three bits can be set, indicating that some, all, or none of the buttons are pressed.

Shift	An integer that corresponds to the state of the SHIFT, CTRL, and ALT keys.  A bit is set if the key is down.  The Shift argument is a bit field with the least-significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2 ).  These bits correspond to the values 1, 2, and 4, respectively.  The Shift argument indicates the state of these keys.  Some, all, or none of the bits can be set, indicating that some, all, or none of the keys are pressed.  For example, if both CTRL and ALT were pressed, the value of shift would be 6.

x, y	Returns a number that specifies the current location of the mouse pointer.  The x  and y values are always expressed in terms of the coordinate system set by the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties of the object.

Remarks

The MouseMove event is generated continually as the mouse pointer moves across objects.  Unless another object has captured the mouse, an object recognizes a MouseMove event whenever the mouse position is within its borders.

If you need to test for the button or shift arguments, you can use constants listed in the object library in the Object Browser to define the bits within the argument:

Constant	Value	Description

vbLeftButton	1	Left button is pressed.

vbRightButton	2	Right button is pressed.

vbMiddleButton	4	Middle button is pressed.

vbShiftMask	1	SHIFT key is pressed.

vbCtrlMask	2	CTRL key is pressed.

vbAltMask	4	ALT key is pressed.

The constants then act as bit masks you can use to test for any combination of buttons without having to figure out the unique bit field value for each combination.

You test for a condition by first assigning each result to a temporary integer variable and then comparing the button or shift arguments to a bit mask.  Use the And operator with each argument to test if the condition is greater than zero, indicating the key or button is pressed, as in the following code:

LeftDown = (Button And vbLeftButton) > 0

CtrlDown = (Shift And vbCtrlMask) > 0

Then, in a procedure, you can test for any combination of conditions, as follows:

If LeftDown And CtrlDown Then

Note   You can use MouseDown and MouseUp event procedures to respond to events caused by pressing and releasing mouse buttons.

The button argument for MouseMove differs from the button argument for MouseDown and MouseUp.  For MouseMove, the button argument indicates the current state of all buttons; a single MouseMove event can indicate that some, all, or no buttons are pressed.  For MouseDown and MouseUp, the button argument indicates exactly one button per event.

Any time you move a window inside a MouseMove event, it can cause a cascading event.  MouseMove events are generated when the window moves underneath the pointer.  A MouseMove event can be generated even if the mouse is perfectly stationary.


PICS Dial MouseUp Event
	MouseUp Event
Occur when the user presses (MouseDown) or releases (MouseUp) a mouse button.

Syntax

Visual Basic	Private Sub Object_MouseUp([index As Integer,] Button As Integer, Shift As Integer, x As Single, y As Single)

Visual C++	void OnMouseUpObject(short Button, short Shift, long x, long y);

The MouseUp event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

index	Returns an integer that uniquely identifies a control if it's in a control array.

Button	Returns an integer that identifies the button that was pressed (MouseDown) or released (MouseUp) to cause the event.  The Button argument is a bit field with bits corresponding to the left button (bit 0), right button (bit 1), and middle button (bit 2).  These bits correspond to the values 1, 2, and 4, respectively.  Only one of the bits is set, indicating the button that caused the event.

Shift	Returns an integer that corresponds to the state of the SHIFT, CTRL, and ALT keys when the button specified in the Button argument is pressed or released.  A bit is set if the key is down.  The shift argument is a bit field with the least-significant bits corresponding to the SHIFT key (bit 0), the CTRL key (bit 1), and the ALT key (bit 2 ).  These bits correspond to the values 1, 2, and 4, respectively.  The Shift argument indicates the state of these keys.  Some, all, or none of the bits can be set, indicating that some, all, or none of the keys are pressed.  For example, if both CTRL and ALT were pressed, the value of shift would be 6.

x, y	Returns a number that specifies the current location of the mouse pointer.  The x  and y values are always expressed in terms of the coordinate system set by the ScaleHeight, ScaleWidth, ScaleLeft, and ScaleTop properties of the object.

Remarks

Use a MouseDown or MouseUp event procedure to specify actions that will occur when a given mouse button is pressed or released.  Unlike the Click and DblClick events, MouseDown and MouseUp events enable you to distinguish between the left, right, and middle mouse buttons.  You can also write code for mouse-keyboard combinations that use the SHIFT, CTRL, and ALT keyboard modifiers.

The following applies to both Click and DblClick events:

•	If a mouse button is pressed while the pointer is over a control, that object "captures" the mouse and receives all mouse events up to and including the last MouseUp event.  This implies that the x, y mouse-pointer coordinates returned by a mouse event may not always be in the client area of the object that receives them.

•	If mouse buttons are pressed in succession, the object that captures the mouse after the first press receives all mouse events until all buttons are released.

If you need to test for the button or shift arguments, you can use constants listed in the object library in the Object Browser to define the bits within the argument:

Constant	Value	Description

vbLeftButton	1	Left button is pressed.

vbRightButton	2	Right button is pressed.

vbMiddleButton	4	Middle button is pressed.

vbShiftMask	1	SHIFT key is pressed.

vbCtrlMask	2	CTRL key is pressed.

vbAltMask	4	ALT key is pressed.

The constants then act as bit masks you can use to test for any combination of buttons without having to figure out the unique bit field value for each combination.


PICS Dial PageDown Event
	PageDown Event
Occurs when the user presses the Page Down key while the Dial control has input focus or clicks between the red dot representing the current Value and the Minimun Turn Range.

Syntax

Visual Basic	object_PageDown(Position As Integer, TurnDial As Boolean)

Visual C++	short OnPageDownobject(short Position, BOOL& TurnDial);

The PageDown event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.


PICS Dial PageUp Event
*	PageUp Event
Occurs when the user presses the Page Up key while the Dial control has input focus or clicks between the red dot representing the current Value and the Maximum Turn Range.

Syntax

Visual Basic	object_PageUp(Position As Integer, TurnDial As Boolean)

Visual C++	short OnPageUpobject(short Position, BOOL& TurnDial);

The PageUp event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.


PICS Dial ThumbPosition Event
	ThumbPosition Event
Occurs when the user releases the mouse after turning the Dial control.

Syntax

Visual Basic	object_ThumbPosition(Position As Integer, TurnDial As Boolean)

Visual C++	short OnThumbPositionobject(short Position, BOOL& TurnDial);

The ThumbPosition event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.

Remarks

The Dial control sends a ThumbTrack event each time the position of the Dial control changes as a result of mouse movement. The ThumbTrack event occurs many time as the user turns the dial with the mouse, as opposed to the ThumbPosition event, which only occurs once, when the user releases the mouse.


PICS Dial ThumbTrack Event
	ThumbTrack Event
Occurs when the user turns the Dial control with the mouse.

Syntax

Visual Basic	object_ThumbTrack(Position As Integer, TurnDial As Boolean)

Visual C++	short OnThumbTrackobject(short Position, BOOL& TurnDial);

The ThumbTrack event syntax has these parts:

Part	Description

Object	An object expression that evaluates to Dial object.

Position	The new position of the Dial control as a result of the action.

TurnDial	Indicates whether the Dial should automatically turn itself.  The default is set to TRUE.  If the user doesn’t want the Dial to turn automatically, set this parameter to FALSE.

Remarks

The Dial control sends a ThumbTrack event each time the position of the Dial control changes as a result of mouse movement. The ThumbTrack event occurs many time as the user turns the dial with the mouse, as opposed to the ThumbPosition event, which only occurs once, when the user releases the mouse.


numeric expression

Any expression that can be evaluated as a number. Elements of the expression can include any combination of keywords, variables, constants, and operators that result in a number.


date expression

Date variables are stored as IEEE 64-bit (8-byte) floating-point numbers that represent dates ranging from 1 January 100 to 31 December 9999 and times from 0:00:00 to 23:59:59.  Any recognizable literal date values can be assigned to Date variables.  Literal dates must be enclosed within number sign characters (#), for example, #January 1, 1993# or #1 Jan 93#.

Date variables display dates according to the short date format recognized by your computer.  Times display according to the time format (either 12- or 24-hour) recognized by your computer.

When other numeric data types are converted to Date, values to the left of the decimal represent date information while values to the right of the decimal represent time.  Midnight is 0 and midday is .5.  Negative whole numbers represent dates before 30 December 1899.


Boolean expression

An expression that evaluates to either True or False.


string expression

Any expression that evaluates to a sequence of contiguous characters. Elements of the expression can include a function that returns a string, a string literal, a string constant, a string variable, a string Variant, or a function that returns a string Variant (Var Type 8).


object expression

An expression that specifies a particular object.  The expression can include any of the object’s containers.  For example, if your application has an Application object that contains a Document object that contains a Text object, the following are valid object expressions:

Application.Document.Text

Application.Text

Document.Text

Text


constant

A named item that retains a constant value throughout the execution of a program, as opposed to a variable, whose value can change during execution.  Each host application can define its own set of constants.  Additional constants may be defined by the user with the Const statement.  Constants can be used anywhere in your code in place of actual values.  A constant may be a string or a numeric literal, another constant, or any combination that includes arithmetic or logical operators except ls or exponentiation.  For example:

Const A = “My String”


object library

A file with the .OLB extension that provides information to OLE Automation controllers (like Visual Basic) about available OLE Automation objects.  You can use the Object Browser to examine the contents of an object library to get information about the objects provided.


Object Browser

A dialog box that lets you examine the contents of an object library to get information about the objects provided.


Control Panel

A set of programs that control your system configuration.  You use Control Panel utilities to adjust hardware and software options, such as desktop colors, printer selections, date and number formats, fonts, and locale settings, such as language and system of measurement.


design time

The time during which you build an application in the development environment by adding controls, setting control or form properties, and so on.  In contrast, during run time, you interact with the application as a user would.


run time

The time when code is running. During run time, you interact with the application as a user would.


multicolumn TreeView control

A multicolumn TreeView control is a TreeView control with its data arranged in a set of columns that go across the page. As opposed to the normal style, where all the data is arranged in a single column down the page.


Properties window

A window used to display or change properties of a selected form or control at design-time. Some custom controls have customized Property windows.


bitmap

An image represented by pixels and stored as a collection of bits in which each bit corresponds to one pixel. On color systems, more than one bit corresponds to each pixel. A bitmap usually has a .BMP filename extension.


icon

A graphical representation of an object or concept commonly used to represent minimized applications in Microsoft Windows. Essentially, an icon is a bitmap with a maximum size of 32 x 32 pixels. Icons have an .ICO filename extension.


metafile

A file that stores an image as graphical objects (lines, circles, polygons) rather than as pixels. There are two types of metafiles, standard and enhanced. Standard metafiles usually have a .WMF filename extension. Enhanced metafiles usually have an .EMF filename extension. Metafiles preserve an image more accurately than pixels when the image is resized.


Empty Branch Object

An empty Branch object is a Branch object that does not have an associated TreeView control item. Methods that return Branch objects may return an empty Branch object to signify the end of a list or a search failure. You can detect an empty Branch by using the IsValid member function.


PICS Dial Events

 Click

 DblClick

 EndScroll

 KeyDown

 KeyPress

 KeyUp

 LineDown

 LineUp

 MouseDown

 MouseMove

 MouseUp

 PageDown

 PageUp

 ThumbPosition

 ThumbTrack


PICS Dial Methods

 AboutBox


PICS Dial Properties

 Direction

 Enabled

 hWnd

 MaximumRange

 MaximumTurnRange

 MinimumRange

 MinimumTurnRange

 Value