Erstellen eines Tree-View Steuerelements

Um ein Strukturansicht-Steuerelement zu erstellen, verwenden Sie die CreateWindowEx-Funktion, und geben Sie den WC _ TREEVIEW-Wert für die Fensterklasse an. Die Strukturansichtsfensterklasse wird im Adressraum der Anwendung registriert, wenn die allgemeine Steuerelement-DLL geladen wird. Um sicherzustellen, dass die DLL geladen wird, verwenden Sie die InitCommonControls-Funktion.

Wichtige Informationen

Technologien

Voraussetzungen

  • C/C++
  • Windows Benutzeroberfläche-Programmierung

Instructions

Erstellen einer Instanz eines Tree-View Steuerelements

Im folgenden Beispiel wird ein Strukturansicht-Steuerelement erstellt, das so dimensioniert ist, dass es dem Clientbereich des übergeordneten Fensters folgt. Außerdem werden anwendungsdefinierte Funktionen verwendet, um dem Steuerelement eine Bildliste zu zuordnen und dem Steuerelement Elemente hinzuzufügen.

// Create a tree-view control. 
// Returns the handle to the new control if successful,
// or NULL otherwise. 
// hwndParent - handle to the control's parent window. 
// lpszFileName - name of the file to parse for tree-view items.
// g_hInst - the global instance handle.
// ID_TREEVIEW - the resource ID of the control.

HWND CreateATreeView(HWND hwndParent)
{ 
    RECT rcClient;  // dimensions of client area 
    HWND hwndTV;    // handle to 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,
                            TEXT("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, shown later. 
    if (!InitTreeViewImageLists(hwndTV) || 
                !InitTreeViewItems(hwndTV))
    { 
        DestroyWindow(hwndTV); 
        return FALSE; 
    } 
    return hwndTV;
} 

Bemerkungen

Wenn Sie ein Strukturansicht-Steuerelement erstellen, können Sie ihm auch eine WM _ SETFONT-Nachricht senden, um die Schriftart für den Text fest zu legen. Sie sollten diese Nachricht senden, bevor Sie Elemente einfügen. Standardmäßig verwendet eine Strukturansicht die Symboltitelschriftart. Obwohl Sie die Schriftart pro Element mithilfe von Custom Drawanpassen können, verwendet das Strukturansicht-Steuerelement die Abmessungen der Schriftart, die von der WM _ SETFONT-Meldung angegeben wird, um abstands- und layout-Elemente zu bestimmen.

Verwenden Tree-View Steuerelementen

CustDTv-Beispiel veranschaulicht benutzerdefiniertes Zeichnen in einem Tree-View Steuerelement