Hide

SftTree/DLL 7.5 - Tree Control

Display
Print

Notifications

The parent window of a tree control can receive the following event notifications using the WM_COMMAND message. For information on the WM_COMMAND message, please see the Windows API documentation.

WM_COMMAND:

NotifyCode = HIWORD(wParam);
idItem = LOWORD(wParam);
hwndCtl = (HWND) lParam;

Notification Codes

General Notifications
Cell Editing Notifications
Drag & Drop Notifications
Left Mouse Button Notifications
Middle Mouse Button Notifications
Right Mouse Button Notifications

The SftTree/DLL Wizard can be used to look at notifications as they occur by clicking on the "Events" tab.

General Notifications

NotifyCodeDescription
SFTTREEN_AUTOEXPANDINGThe item described by GetExpandCollapseIndex needs to be expanded because of the current SetAutoExpand settings or a recent call to StartAutoExpandTimer.
SFTTREEN_CARETCHANGEThe caret location has changed. The caret location describes the current item which receives the focus rectangle when the tree control has the input focus (see GetCaretIndex). The current item is not necessarily the same as the currently selected item (see GetCurSel). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_COLUMNSIZEThe user resized a column or the splitter bar has been moved. GetResizeColumn can be used to determine the column being resized. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_COLUMNSIZEENDEDThe user resized a column or the splitter bar has been moved and the column resizing operation has ended (the user released the left mouse button).
SFTTREEN_COLUMNSIZESTARTEDThe user is about to resize a column or the splitter bar is about to be moved. The user has pressed the left mouse button on the column resizing area. GetResizeColumn can be used to determine the column being resized.
SFTTREEN_CONTEXTMENUThe right mouse button was clicked on the tree control. This notification can be used to implement context menus. Use the Windows GetCursorPos API to determine the cursor position. Before displaying a context menu, an application should always send a WM_CANCELMODE message to the tree control.
SFTTREEN_EXPANDALLThe user has pressed the numeric keypad's "*" key to expand the current item so all its dependents are shown. Use GetCaretIndex to retrieve the current item index.
SFTTREEN_FLYBYHIGHLIGHTThe item highlighted by flyby highlighting has changed. Use GetFlybyIndex to retrieve to index of the current target item of flyby highlighting.
SFTTREEN_KEYINTERCEPTEDA key stroke for a child window has been intercepted during cell editing. Key strokes to be intercepted are defined using SetKeyHandling. The intercepted key can be retrieved using the GetKeyHandling function.
SFTTREEN_KILLFOCUSThe tree control lost the input focus.
SFTTREEN_MOUSEENTERThe mouse cursor entered the tree control window.
SFTTREEN_MOUSELEAVEThe mouse cursor left the tree control window.
SFTTREEN_MOUSEMOVEThe tree control received a WM_MOUSEMOVE message. Use the Windows API GetCursorPos to retrieve the cursor location.
SFTTREEN_OFFSETCHANGEThe horizontal scrolling offset has changed. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. While processing this notification, no tree control and item attributes should be altered.
SFTTREEN_OVERHEADCHANGEDDue to the variable number of levels and the resulting hierarchical display, the width of the first column is always treated as a minimum width. The text portion of the first column will always be at least the width specified using SetColumns, no matter what level the item is on. This can result in the first column being much wider than the defined width. If more levels are added to a hierarchy, the value returned by GetOverheadWidth increases. When the overhead width changes, this notification is sent to the tree control's parent window. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_REORDEREDThe user has reordered the columns. All column header buttons are returned to their "up" position.
SFTTREEN_SELCANCELThe user canceled a selection. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_SELCHANGEThe user has changed the current selection. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_SETFOCUSThe tree control received the input focus.
SFTTREEN_TOPCHANGEThe first item displayed by the control has changed. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_VK_RETURNThe Return key was pressed while the tree control had the input focus. An application can implement a custom response to this notification. A SFTTREEN_LBUTTONDBLCLK_TEXT notification immediately follows the SFTTREEN_VK_RETURN notification. If an application handles the SFTTREEN_VK_RETURN notification, the application should send a WM_CANCELMODE message to the tree control to suppress the SFTTREEN_LBUTTONDBLCLK_TEXT notification.

Cell Editing Notifications

NotifyCodeDescription
SFTTREEN_QUITEDITThis notification is used to notify the tree control's parent window that any editing of tree cells should be abandoned now. No data validation should take place and no modifications should be made to the tree control. This notification is only sent if the tree control currently has a child window. The tree control generates this notification when the size or position of the child window is changing, when modifications to the tree control occur or when a menu or menu selection is about to become active. The parent window should destroy all controls associated with cell editing. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_VALIDATEEDITIf a cell is being edited, the parent window should now validate the data entered. The parent window can display an error message and then set the input focus back to the control used for cell editing. In this case, the event that caused input validation to occur, is ignored. If the parent accepts the input data, the child control(s) should now be destroyed, the tree control updated and the input focus set to the tree control. If the child control is not destroyed, the tree control assumes that input validation failed and cell editing continues. This notification is only sent if the tree control currently has a child window. The tree control generates this notification when the user moves away from the child control using the mouse buttons. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.

Drag & Drop Notifications

NotifyCodeDescription
SFTTREEN_BEGINDRAGThe user is starting to drag one or several items. All items currently selected participate in the drag operation. An application can set the mouse cursor in response to this event or cancel the drag operation. The drag operation can be aborted by sending a WM_CANCELMODE message to the tree control or by clearing all currently selected items. The drag operation is described by the SFTTREE_DRAGINFO structure. The SFTTREESTYLE_DRAGDROP style has to be defined to receive this notification.
SFTTREEN_CANCELDRAGThe user canceled the drag operation. The SFTTREESTYLE_DRAGDROP style has to be defined to receive this notification.
SFTTREEN_DRAGGINGThe user is moving the mouse cursor to drag one or several items. All items currently selected participate in the drag operation. The drag operation is described by the SFTTREE_DRAGINFO structure. An application can set the mouse cursor in response to this event. The SFTTREESTYLE_DRAGDROP style has to be defined to receive this notification.
SFTTREEN_ENDDRAGThe user released the mouse button. All items currently selected participate in the drag operation. The drag operation is described by the SFTTREE_DRAGINFO structure. An application should process the dropped items in response to this event. The SFTTREESTYLE_DRAGDROP style has to be defined to receive this notification.

Left Mouse Button Notifications

NotifyCodeDescription
SFTTREEN_LBUTTONDBLCLK_BUTTONThe left mouse button was double-clicked on the expand/collapse button of the current entry (caret location). Use GetExpandCollapseIndex to determine the item index where the mouse button was clicked. Use Expand and Collapse to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_CELLThe left mouse button was double-clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell picture, SFTTREEN_LBUTTONDBLCLK_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_CELLBMPThe left mouse button was double-clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell, but not on the cell picture, SFTTREEN_LBUTTONDBLCLK_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_COLUMNProvided for compatibility with older versions - use SFTTREEN_LBUTTONDBLCLK_COLUMN_HEADER instead.
SFTTREEN_LBUTTONDBLCLK_COLUMN_FOOTERThe left mouse button was double-clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_COLUMN_FOOTERDDThe left mouse button was double-clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_COLUMN_HEADERThe left mouse button was double-clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_COLUMNRESThe left mouse button was double-clicked at the right edge of the column header or the splitter bar. Usually this notification is used to optimally resize a column using MakeColumnOptimal. Use GetResizeColumn to determine the column number of the header. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_ITEMThe left mouse button was double-clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_LABELThe left mouse button was double-clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_PLUSMINThe left mouse button was double-clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_ROWThe left mouse button was double-clicked on the row header of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_LBUTTONDBLCLK_ROWCOLUMN_HEADER instead.
SFTTREEN_LBUTTONDBLCLK_ROWCOLUMN_FOOTERThe left mouse button was double-clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_ROWCOLUMN_HEADERThe left mouse button was double-clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDBLCLK_TEXTThe left mouse button was double-clicked on the cells of the current entry (caret location) or the Return key was pressed. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. This notification is always sent for the Return key. Instead of using this notification, SFTTREEN_LBUTTONDBLCLK_CELL and SFTTREEN_LBUTTONDBLCLK_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification for mouse button clicks.
SFTTREEN_LBUTTONDBLCLK_TREEThe left mouse button was double-clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_BUTTONThe left mouse button was clicked on the expand/collapse button of the current entry (caret location), the left arrow key was clicked on an expanded parent item or the right arrow key was clicked on a collapsed parent item. Use GetExpandCollapseIndex to determine the item index. Expand and Collapse can be used to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_CELLThe left mouse button was clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell picture, SFTTREEN_LBUTTONDOWN_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_CELLBMPThe left mouse button was clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell, but not on the cell picture, SFTTREEN_LBUTTONDOWN_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_COLUMNProvided for compatibility with older versions - use SFTTREEN_LBUTTONDOWN_COLUMN_HEADER instead.
SFTTREEN_LBUTTONDOWN_COLUMN_FOOTERThe left mouse button was clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_COLUMN_FOOTERDDThe left mouse button was clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_COLUMN_HEADERThe left mouse button was clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_COLUMN_HEADERDDThe left mouse button was clicked on the column header dropdown/filter button. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_ITEMThe left mouse button was clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_LABELThe left mouse button was clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_PLUSMINThe left mouse button was clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_ROWThe left mouse button was clicked on the row header of the current item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_LBUTTONDOWN_ROWCOLUMN_HEADER instead.
SFTTREEN_LBUTTONDOWN_ROWCOLUMN_FOOTERThe left mouse button was clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_ROWCOLUMN_HEADERThe left mouse button was clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_TEXTThe left mouse button was clicked on the cells (any column) of the current entry (caret location). Use GetCaretIndex and GetCaretColumn to retrieve the cell location. Instead of using this notification, SFTTREEN_LBUTTONDOWN_CELL and SFTTREEN_LBUTTONDOWN_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.
SFTTREEN_LBUTTONDOWN_TEXTAGAINThe left mouse button was clicked on a cell (any column) of an already selected item. The notification is only generated if there is a sufficiently long pause between the first click to select the item and the second click. If the pause is not long enough, the SFTTREEN_LBUTTONDBLCLK_TEXT notification is generated instead. Use GetClickAgainPos to determine the index and column number where the click occurred.
SFTTREEN_LBUTTONDOWN_TREEThe left mouse button was clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification.

Middle Mouse Button Notifications

NotifyCodeDescription
SFTTREEN_MBUTTONDBLCLK_BUTTONThe middle mouse button was double-clicked on the expand/collapse button of the current entry (caret location). Use GetExpandCollapseIndex to determine the item index where the mouse button was clicked. Use Expand and Collapse to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_CELLThe middle mouse button was double-clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell picture, SFTTREEN_MBUTTONDBLCLK_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_CELLBMPThe middle mouse button was double-clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell, but not on the cell picture, SFTTREEN_MBUTTONDBLCLK_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_COLUMNProvided for compatibility with older versions - use SFTTREEN_MBUTTONDBLCLK_COLUMN_HEADER instead.
SFTTREEN_MBUTTONDBLCLK_COLUMN_FOOTERThe middle mouse button was double-clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_COLUMN_FOOTERDDThe middle mouse button was double-clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_COLUMN_HEADERThe middle mouse button was double-clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_COLUMNRESThe middle mouse button was double-clicked at the right edge of the column header. Usually this notification is used to optimally resize a column using MakeColumnOptimal. Use GetResizeColumn to determine the column number of the header. This notification is not generated for a splitter bar. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_ITEMThe middle mouse button was double-clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_LABELThe middle mouse button was double-clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_PLUSMINThe middle mouse button was double-clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_ROWThe middle mouse button was double-clicked on the row header of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_MBUTTONDBLCLK_ROWCOLUMN_HEADER instead.
SFTTREEN_MBUTTONDBLCLK_ROWCOLUMN_FOOTERThe middle mouse button was double-clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_ROWCOLUMN_HEADERThe middle mouse button was double-clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_TEXTThe middle mouse button was double-clicked on the cells of the current entry (caret location) or the Return key was pressed. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. Instead of using this notification, SFTTREEN_MBUTTONDBLCLK_CELL and SFTTREEN_MBUTTONDBLCLK_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDBLCLK_TREEThe middle mouse button was double-clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_BUTTONThe middle mouse button was clicked on the expand/collapse button of the current entry (caret location). Use GetExpandCollapseIndex to determine the item index where the mouse button was clicked. Use Expand and Collapse to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_CELLThe middle mouse button was clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell picture, SFTTREEN_MBUTTONDOWN_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_CELLBMPThe middle mouse button was clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell, but not on the cell picture, SFTTREEN_MBUTTONDOWN_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_COLUMNProvided for compatibility with older versions - use SFTTREEN_MBUTTONDOWN_COLUMN_HEADER instead.
SFTTREEN_MBUTTONDOWN_COLUMN_FOOTERThe middle mouse button was clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_COLUMN_FOOTERDDThe middle mouse button was clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_COLUMN_HEADERThe middle mouse button was clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_COLUMN_HEADERDDThe middle mouse button was clicked on the column header dropdown/filter button. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_ITEMThe middle mouse button was clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_LABELThe middle mouse button was clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_PLUSMINThe middle mouse button was clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_ROWThe middle mouse button was clicked on the row header of the current item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_MBUTTONDOWN_ROWCOLUMN_HEADER instead.
SFTTREEN_MBUTTONDOWN_ROWCOLUMN_FOOTERThe middle mouse button was clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_ROWCOLUMN_HEADERThe middle mouse button was clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_TEXTThe middle mouse button was clicked on the cells (any column) of the current entry (caret location). Use GetCaretIndex and GetCaretColumn to retrieve the cell location. Instead of using this notification, SFTTREEN_MBUTTONDOWN_CELL and SFTTREEN_MBUTTONDOWN_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_TEXTAGAINThe middle mouse button was clicked on a cell (any column) of an already selected item. The notification is only generated if there is a sufficiently long pause between the first click to select the item and the second click. If the pause is not long enough, the SFTTREEN_MBUTTONDBLCLK_TEXT notification is generated instead. Use GetClickAgainPos to determine the index and column number where the click occurred. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_MBUTTONDOWN_TREEThe middle mouse button was clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.

Right Mouse Button Notifications

NotifyCodeDescription
SFTTREEN_RBUTTONDBLCLK_BUTTONThe right mouse button was double-clicked on the expand/collapse button of the current entry (caret location). Use GetExpandCollapseIndex to determine the item index where the mouse button was clicked. Use Expand and Collapse to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_CELLThe right mouse button was double-clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell picture, SFTTREEN_RBUTTONDBLCLK_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_CELLBMPThe right mouse button was double-clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is double-clicked on the cell, but not on the cell picture, SFTTREEN_RBUTTONDBLCLK_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_COLUMNProvided for compatibility with older versions - use SFTTREEN_RBUTTONDBLCLK_COLUMN_HEADER instead.
SFTTREEN_RBUTTONDBLCLK_COLUMN_FOOTERThe right mouse button was double-clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_COLUMN_FOOTERDDThe right mouse button was double-clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_COLUMN_HEADERThe right mouse button was double-clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_COLUMNRESThe right mouse button was double-clicked at the right edge of the column header. Usually this notification is used to optimally resize a column using MakeColumnOptimal. Use GetResizeColumn to determine the column number of the header. This notification is not generated for a splitter bar. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_ITEMThe right mouse button was double-clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_LABELThe right mouse button was double-clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_PLUSMINThe right mouse button was double-clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_ROWThe right mouse button was double-clicked on the row header of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_RBUTTONDBLCLK_ROWCOLUMN_HEADER instead.
SFTTREEN_RBUTTONDBLCLK_ROWCOLUMN_FOOTERThe right mouse button was double-clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_ROWCOLUMN_HEADERThe right mouse button was double-clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_TEXTThe right mouse button was double-clicked on the cells of the current entry (caret location) or the Return key was pressed. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. Instead of using this notification, SFTTREEN_RBUTTONDBLCLK_CELL and SFTTREEN_RBUTTONDBLCLK_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDBLCLK_TREEThe right mouse button was double-clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_BUTTONThe right mouse button was clicked on the expand/collapse button of the current entry (caret location). Use GetExpandCollapseIndex to determine the item index where the mouse button was clicked. Use Expand and Collapse to expand/collapse the item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_CELLThe right mouse button was clicked on a cell, but not on the cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell picture, SFTTREEN_RBUTTONDOWN_CELLBMP is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_CELLBMPThe right mouse button was clicked on a cell picture. Use GetCaretIndex and GetCaretColumn to retrieve the cell location. If the mouse button is clicked on the cell, but not on the cell picture, SFTTREEN_RBUTTONDOWN_CELL is received instead. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_COLUMNProvided for compatibility with older versions - use SFTTREEN_RBUTTONDOWN_COLUMN_HEADER instead.
SFTTREEN_RBUTTONDOWN_COLUMN_FOOTERThe right mouse button was clicked on the column footer. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_COLUMN_FOOTERDDThe right mouse button was clicked on the column footer dropdown/filter button. Use GetFooterButton to determine the footer button pressed and use SetFooterButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_COLUMN_HEADERThe right mouse button was clicked on the column header. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_COLUMN_HEADERDDThe right mouse button was clicked on the column header dropdown/filter button. Use GetHeaderButton to determine the header button pressed and use SetHeaderButton to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_ITEMThe right mouse button was clicked on the item picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_LABELThe right mouse button was clicked on the label picture of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_PLUSMINThe right mouse button was clicked on the plus/minus bitmap of the current entry (caret location). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_ROWThe right mouse button was clicked on the row header of the current item. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_ROWCOLUMNProvided for compatibility with older versions - use SFTTREEN_RBUTTONDOWN_ROWCOLUMN_HEADER instead.
SFTTREEN_RBUTTONDOWN_ROWCOLUMN_FOOTERThe right mouse button was clicked on the row/column footer. Use the SetRowColFooterButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_ROWCOLUMN_HEADERThe right mouse button was clicked on the row/column header. Use the SetRowColHeaderButton function to reset the button (if desired). The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_TEXTThe right mouse button was clicked on the cells (any column) of the current entry (caret location). Use GetCaretIndex and GetCaretColumn to retrieve the cell location. Instead of using this notification, SFTTREEN_RBUTTONDOWN_CELL and SFTTREEN_RBUTTONDOWN_CELLBMP can also be used. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_TEXTAGAINThe right mouse button was clicked on a cell (any column) of an already selected item. The notification is only generated if there is a sufficiently long pause between the first click to select the item and the second click. If the pause is not long enough, the SFTTREEN_RBUTTONDBLCLK_TEXT notification is generated instead. Use GetClickAgainPos to determine the index and column number where the click occurred. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.
SFTTREEN_RBUTTONDOWN_TREEThe right mouse button was clicked in the area of the current entry (caret location) where the connecting tree lines are drawn. The SFTTREESTYLE_NOTIFY style has to be defined to receive this notification. This notification is not generated if the tree control has the SFTTREESTYLE_LEFTBUTTONONLY style.

See Also C/C++ API | Categories