# Class TGuiMidiKeys

Description | Hierarchy | Fields | Methods | Properties

## Unit

DGuiMidiKeys

## Declaration

`type TGuiMidiKeys = class(TGuiBaseControl)`

## Description

no description available, TGuiBaseControl description follows

## Hierarchy

- TGraphicControl
- TGuiBaseControl
- TGuiMidiKeys

## Overview

### Methods

| `constructor Create(AOwner: TComponent); override;`
| `destructor Destroy; override;`
| `procedure SetKeyColor(FromKey, ToKey: Byte; BaseColor: TColor = clNone; Over: TColor = clNone; Pressed: TColor = clNone);`
| `procedure SetKeyVelocity(FromKey, ToKey: Byte; Amount: single);`
| `procedure SetKeyPressed(KeyNr: Byte; KeyDown: Boolean = true);`
| `procedure ReleaseKey(KeyNr: Byte; ReleaseMouseTriggered: boolean = false);`
| `procedure ReleaseAllKeys(ReleaseMouseTriggered: boolean = false);`
| `procedure RemoveKeyColor(FromKey, ToKey: Byte);`
| `procedure AllNotesOff(MouseTriggeredOnly: Boolean = true; ExceptKey: Integer = -1);`
| `procedure RedrawBuffer(doBufferFlip: Boolean); override;`
| `function MousePosToKey(X, Y: Integer; CheckYPos: Boolean = true): Integer; dynamic;`
| `function GetZoneMouseOverType(X: Integer; KeyNr: Integer = -1; Zone: TGuiKeyZoneItem = nil): TGuiZoneMousePosType;`
| `function ScreenCoordOnKey(X, Y: Integer; KeyNr: Integer; CheckYPos: Boolean = true): Boolean; dynamic;`

### Properties

| `property Keys: TGuiKeyArray read fKeys;`
| `property ReleaseMouseBtnOnLeave;`
| `property KeyDownMode: TGuiKeyDownMode read fKeyDownMode write SetKeyDownMode;`
| `property BorderColor: TColor read fBorderColor write SetBorderColor default clBlack;`
| `property KeySeparatorColor: TColor read fKeySeparatorColor write SetKeySeparatorColor default clBlack;`
| `property ZoneSeparatorColor: TColor read fZoneSeparatorColor write SetZoneSeparatorColor default clBlack;`
| `property ZoneBarColor: TColor read fZoneBarColor write SetZoneBarColor default clWhite;`
| `property ZoneBarHoverColor: TColor read fZoneBarHoverColor write SetZoneBarHoverColor default $00CCEEFF;`
| `property BlackKeyColor: TColor read fBlackKeyColor write SetBlackKeyColor default $00333333;`
| `property BlackKeyHoverColor: TColor read fBlackKeyHoverColor write SetBlackKeyHoverColor default $00666666;`
| `property BlackKeyPressedColor: TColor read fBlackKeyPressedColor write SetBlackKeyPressedColor default clSilver;`
| `property WhiteKeyColor: TColor read fWhiteKeyColor write SetWhiteKeyColor default $00F8F8F8;`
| `property WhiteKeyHoverColor: TColor read fWhiteKeyHoverColor write SetWhiteKeyHoverColor default $00DDDDDD;`
| `property WhiteKeyPressedColor: TColor read fWhiteKeyPressedColor write SetWhiteKeyPressedColor default clSilver;`
| `property CursorKeys: TCursor read fCursorKeys write fCursorKeys default crHandPoint;`
| `property CursorZoneBar: TCursor read fCursorZoneBar write fCursorZoneBar default crDefault;`
| `property CursorZone: TCursor read fCursorZone write fCursorZone default crSize;`
| `property CursorZoneBorder: TCursor read fCursorZoneBorder write fCursorZoneBorder default crSizeWE;`
| `property Height3d: Single read fHeight3d write SetHeight3d;`
| `property BlackKeyHeight: Single read fBlackKeyHeight write SetBlackKeyHeight;`
| `property BaseOctave: Byte read fBaseOctave write SetBaseOctave default 3;`
| `property NumOctaves: Byte read fNumOctaves write SetNumOctaves default 3;`
| `property IncludeLastOctave: Boolean read fIncludeLastOctave write SetIncludeLastOctave default false;`
| `property KeyZones: TGuiKeyZoneCollection read fKeyZones write SetKeyZones;`
| `property ShowKeyZones: Boolean read fShowKeyZones write SetShowKeyZones default True;`
| `property KeyZoneHeight: Integer read fKeyZoneHeight write SetKeyZoneHeight default 10;`
| `property AllowKeyDragging: Boolean read fAllowKeyDragging write fAllowKeyDragging default true;`
| `property OnMouseUpOnMidiKey: TGuiOnMouseUpOnMidiKey read fOnMouseUpOnMidiKey write fOnMouseUpOnMidiKey;`
| `property OnMouseUpOnKeyZoneBar: TGuiOnMouseUpOnKeyZoneBar read fOnMouseUpOnKeyZoneBar write fOnMouseUpOnKeyZoneBar;`
| `property OnMouseDownOnMidiKey: TGuiOnMouseDownOnMidiKey read fOnMouseDownOnMidiKey write fOnMouseDownOnMidiKey;`
| `property OnMouseDownKeyZoneBar: TGuiOnMouseDownOnKeyZoneBar read fOnMouseDownOnKeyZoneBar write fOnMouseDownOnKeyZoneBar;`
| `property OnZoneBarMouseEnter: TGuiOnZoneBarMouseEnter read fOnZoneBarMouseEnter write fOnZoneBarMouseEnter;`
| `property OnZoneBarMouseLeave: TGuiOnZoneBarMouseLeave read fOnZoneBarMouseLeave write fOnZoneBarMouseLeave;`
| `property OnZoneMouseEnter: TGuiOnZoneMouseEnter read fOnZoneMouseEnter write fOnZoneMouseEnter;`
| `property OnZoneMouseLeave: TGuiOnZoneMouseLeave read fOnZoneMouseLeave write fOnZoneMouseLeave;`
| `property OnZoneMouseOverChanged: TGuiOnZoneMouseOverChanged read fOnZoneMouseOverChanged write fOnZoneMouseOverChanged;`
| `property OnZoneSelectionChanged: TGuiOnZoneSelectionChanged read fOnZoneSelectionChanged write fOnZoneSelectionChanged;`
| `property OnKeyMouseEnter: TGuiOnKeyMouseEnter read fOnKeyMouseEnter write fOnKeyMouseEnter;`
| `property OnKeyMouseLeave: TGuiOnKeyMouseLeave read fOnKeyMouseLeave write fOnKeyMouseLeave;`
| `property OnStartZoneBarDragging: TGuiOnStartZoneBarDragging read fOnStartZoneBarDragging write fOnStartZoneBarDragging;`
| `property OnMoveZoneBarDragging: TGuiOnMoveZoneBarDragging read fOnMoveZoneBarDragging write fOnMoveZoneBarDragging;`
| `property OnEndZoneBarDragging: TGuiOnEndZoneBarDragging read fOnEndZoneBarDragging write fOnEndZoneBarDragging;`
| `property OnStartKeyDragging: TGuiOnStartKeyDragging read fOnStartKeyDragging write fOnStartKeyDragging;`
| `property OnMoveKeyDragging: TGuiOnMoveKeyDragging read fOnMoveKeyDragging write fOnMoveKeyDragging;`
| `property OnEndKeyDragging: TGuiOnEndKeyDragging read fOnEndKeyDragging write fOnEndKeyDragging;`
| `property OnNoteOn: TGuiOnNoteOn read fOnNoteOn write fOnNoteOn;`
| `property OnNoteOff: TGuiOnNoteOff read fOnNoteOff write fOnNoteOff;`

## Description

### Methods

| `constructor Create(AOwner: TComponent); override;`

| `destructor Destroy; override;`

| `procedure SetKeyColor(FromKey, ToKey: Byte; BaseColor: TColor = clNone; Over: TColor = clNone; Pressed: TColor = clNone);`

| `procedure SetKeyVelocity(FromKey, ToKey: Byte; Amount: single);`

| `procedure SetKeyPressed(KeyNr: Byte; KeyDown: Boolean = true);`

| `procedure ReleaseKey(KeyNr: Byte; ReleaseMouseTriggered: boolean = false);`

| `procedure ReleaseAllKeys(ReleaseMouseTriggered: boolean = false);`

| `procedure RemoveKeyColor(FromKey, ToKey: Byte);`

| `procedure AllNotesOff(MouseTriggeredOnly: Boolean = true; ExceptKey: Integer = -1);`

| `procedure RedrawBuffer(doBufferFlip: Boolean); override;`

| `function MousePosToKey(X, Y: Integer; CheckYPos: Boolean = true): Integer; dynamic;`

| `function GetZoneMouseOverType(X: Integer; KeyNr: Integer = -1; Zone: TGuiKeyZoneItem = nil): TGuiZoneMousePosType;`

| `function ScreenCoordOnKey(X, Y: Integer; KeyNr: Integer; CheckYPos: Boolean = true): Boolean; dynamic;`

### Properties

| `property Keys: TGuiKeyArray read fKeys;`

| `property ReleaseMouseBtnOnLeave;`

| `property KeyDownMode: TGuiKeyDownMode read fKeyDownMode write SetKeyDownMode;`

| `property BorderColor: TColor read fBorderColor write SetBorderColor default clBlack;`

| `property KeySeparatorColor: TColor read fKeySeparatorColor write SetKeySeparatorColor default clBlack;`

| `property ZoneSeparatorColor: TColor read fZoneSeparatorColor write SetZoneSeparatorColor default clBlack;`

| `property ZoneBarColor: TColor read fZoneBarColor write SetZoneBarColor default clWhite;`

| `property ZoneBarHoverColor: TColor read fZoneBarHoverColor write SetZoneBarHoverColor default $00CCEEFF;`

| `property BlackKeyColor: TColor read fBlackKeyColor write SetBlackKeyColor default $00333333;`

| `property BlackKeyHoverColor: TColor read fBlackKeyHoverColor write SetBlackKeyHoverColor default $00666666;`

| `property BlackKeyPressedColor: TColor read fBlackKeyPressedColor write SetBlackKeyPressedColor default clSilver;`

| `property WhiteKeyColor: TColor read fWhiteKeyColor write SetWhiteKeyColor default $00F8F8F8;`

| `property WhiteKeyHoverColor: TColor read fWhiteKeyHoverColor write SetWhiteKeyHoverColor default $00DDDDDD;`

| `property WhiteKeyPressedColor: TColor read fWhiteKeyPressedColor write SetWhiteKeyPressedColor default clSilver;`

| `property CursorKeys: TCursor read fCursorKeys write fCursorKeys default crHandPoint;`

| `property CursorZoneBar: TCursor read fCursorZoneBar write fCursorZoneBar default crDefault;`

| `property CursorZone: TCursor read fCursorZone write fCursorZone default crSize;`

| `property CursorZoneBorder: TCursor read fCursorZoneBorder write fCursorZoneBorder default crSizeWE;`

| `property Height3d: Single read fHeight3d write SetHeight3d;`

| `property BlackKeyHeight: Single read fBlackKeyHeight write SetBlackKeyHeight;`

| `property BaseOctave: Byte read fBaseOctave write SetBaseOctave default 3;`

| `property NumOctaves: Byte read fNumOctaves write SetNumOctaves default 3;`

| `property IncludeLastOctave: Boolean read fIncludeLastOctave write SetIncludeLastOctave default false;`

| `property KeyZones: TGuiKeyZoneCollection read fKeyZones write SetKeyZones;`

| `property ShowKeyZones: Boolean read fShowKeyZones write SetShowKeyZones default True;`

| `property KeyZoneHeight: Integer read fKeyZoneHeight write SetKeyZoneHeight default 10;`

| `property AllowKeyDragging: Boolean read fAllowKeyDragging write fAllowKeyDragging default true;`

| `property OnMouseUpOnMidiKey: TGuiOnMouseUpOnMidiKey read fOnMouseUpOnMidiKey write fOnMouseUpOnMidiKey;`

| `property OnMouseUpOnKeyZoneBar: TGuiOnMouseUpOnKeyZoneBar read fOnMouseUpOnKeyZoneBar write fOnMouseUpOnKeyZoneBar;`

| `property OnMouseDownOnMidiKey: TGuiOnMouseDownOnMidiKey read fOnMouseDownOnMidiKey write fOnMouseDownOnMidiKey;`

| `property OnMouseDownKeyZoneBar: TGuiOnMouseDownOnKeyZoneBar read fOnMouseDownOnKeyZoneBar write fOnMouseDownOnKeyZoneBar;`

| `property OnZoneBarMouseEnter: TGuiOnZoneBarMouseEnter read fOnZoneBarMouseEnter write fOnZoneBarMouseEnter;`

| `property OnZoneBarMouseLeave: TGuiOnZoneBarMouseLeave read fOnZoneBarMouseLeave write fOnZoneBarMouseLeave;`

| `property OnZoneMouseEnter: TGuiOnZoneMouseEnter read fOnZoneMouseEnter write fOnZoneMouseEnter;`

| `property OnZoneMouseLeave: TGuiOnZoneMouseLeave read fOnZoneMouseLeave write fOnZoneMouseLeave;`

| `property OnZoneMouseOverChanged: TGuiOnZoneMouseOverChanged read fOnZoneMouseOverChanged write fOnZoneMouseOverChanged;`

| `property OnZoneSelectionChanged: TGuiOnZoneSelectionChanged read fOnZoneSelectionChanged write fOnZoneSelectionChanged;`

| `property OnKeyMouseEnter: TGuiOnKeyMouseEnter read fOnKeyMouseEnter write fOnKeyMouseEnter;`

| `property OnKeyMouseLeave: TGuiOnKeyMouseLeave read fOnKeyMouseLeave write fOnKeyMouseLeave;`

| `property OnStartZoneBarDragging: TGuiOnStartZoneBarDragging read fOnStartZoneBarDragging write fOnStartZoneBarDragging;`

| `property OnMoveZoneBarDragging: TGuiOnMoveZoneBarDragging read fOnMoveZoneBarDragging write fOnMoveZoneBarDragging;`

| `property OnEndZoneBarDragging: TGuiOnEndZoneBarDragging read fOnEndZoneBarDragging write fOnEndZoneBarDragging;`

| `property OnStartKeyDragging: TGuiOnStartKeyDragging read fOnStartKeyDragging write fOnStartKeyDragging;`

| `property OnMoveKeyDragging: TGuiOnMoveKeyDragging read fOnMoveKeyDragging write fOnMoveKeyDragging;`

| `property OnEndKeyDragging: TGuiOnEndKeyDragging read fOnEndKeyDragging write fOnEndKeyDragging;`

| `property OnNoteOn: TGuiOnNoteOn read fOnNoteOn write fOnNoteOn;`

| `property OnNoteOff: TGuiOnNoteOff read fOnNoteOff write fOnNoteOff;`

Generated by PasDoc 0.10.0 on 2007-11-13 13:04:18