Creating a Tree-View Control

To create a tree-view control, use the CreateWindowEx function, specifying the WC_TREEVIEW value for the window class. The tree-view window class is registered in the application's address space when the common control dynamic-link library (DLL) is loaded. To ensure that the DLL is loaded, use the InitCommonControls function.

The following example creates a tree-view control that is sized to fit the client area of the parent window. It also uses application-defined functions to associate an image list with the control and add items to the control.

// CreateATreeView - creates a tree-view control.

// Returns the handle of the new control if successful or NULL
// otherwise.

// hwndParent - handle of the control's parent window

// lpszFileName - name of the file to parse for tree-view items

HWND CreateATreeView(HWND hwndParent, LPSTR lpszFileName)

{

RECT rcClient; // dimensions of client area

HWND hwndTV; // handle of tree-view control

// Ensure that the common control DLL is loaded.

InitCommonControls();

// Get the dimensions of the parent window's client area, and create

// the tree-view control.

GetClientRect(hwndParent, &rcClient);

hwndTV = CreateWindowEx(0, WC_TREEVIEW, "Tree View",

WS_VISIBLE | WS_CHILD | WS_BORDER | TVS_HASLINES,

0, 0, rcClient.right, rcClient.bottom,

hwndParent, (HMENU) ID_TREEVIEW, g_hinst, NULL);

// Initialize the image list, and add items to the control.

// InitTreeViewImageLists and InitTreeViewItems are application-

// defined functions.

if (!InitTreeViewImageLists(hwndTV) ||

!InitTreeViewItems(hwndTV, lpszFileName)) {

DestroyWindow(hwndTV);

return FALSE;

}

return hwndTV;

}

Software for developers
Delphi Components
.Net Components
Software for Android Developers
More information resources
MegaDetailed.Net
Unix Manual Pages
Delphi Examples
Databases for Amazon shops developers
Amazon Categories Database
Browse Nodes Database