Hinzufügen von List-View Spalten
In diesem Thema wird das Hinzufügen von Spalten zu einem Listenansichtssteuerelement veranschaulicht. Spalten werden verwendet, um die Elemente und Unterelemente anzuzeigen, wenn sich ein Listenansichtssteuerelement in der Berichtsansicht (Details) befindet. Text aus ausgewählten Spalten kann auch in der Kachelansicht angezeigt werden.
Wichtige Informationen
Technologien
Voraussetzungen
- C/C++
- Programmierung der Windows-Benutzeroberfläche
Anweisungen
Um einem Listenansichtssteuerelement eine Spalte hinzuzufügen, senden Sie die LVM_INSERTCOLUMN-Nachricht , oder verwenden Sie das ListView_InsertColumn-Makro . Um eine Spalte zu löschen, verwenden Sie die LVM_DELETECOLUMN Nachricht.
Im folgenden C++-Codebeispiel wird das ListView_InsertColumn Makro aufgerufen, um einem Listenansichtssteuerelement Spalten hinzuzufügen. Die Spaltenüberschriften werden in der Headerdatei der Anwendung als Zeichenfolgenressourcen definiert, die ab IDS_FIRSTCOLUMN nacheinander nummeriert werden. Die Anzahl der Spalten wird in der Headerdatei als C_COLUMNS definiert.
// InitListViewColumns: Adds columns to a list-view control.
// hWndListView: Handle to the list-view control.
// Returns TRUE if successful, and FALSE otherwise.
BOOL InitListViewColumns(HWND hWndListView)
{
WCHAR szText[256]; // Temporary buffer.
LVCOLUMN lvc;
int iCol;
// Initialize the LVCOLUMN structure.
// The mask specifies that the format, width, text,
// and subitem members of the structure are valid.
lvc.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
// Add the columns.
for (iCol = 0; iCol < C_COLUMNS; iCol++)
{
lvc.iSubItem = iCol;
lvc.pszText = szText;
lvc.cx = 100; // Width of column in pixels.
if ( iCol < 2 )
lvc.fmt = LVCFMT_LEFT; // Left-aligned column.
else
lvc.fmt = LVCFMT_RIGHT; // Right-aligned column.
// Load the names of the column headings from the string resources.
LoadString(g_hInst,
IDS_FIRSTCOLUMN + iCol,
szText,
sizeof(szText)/sizeof(szText[0]));
// Insert the columns into the list view.
if (ListView_InsertColumn(hWndListView, iCol, &lvc) == -1)
return FALSE;
}
return TRUE;
}
Zugehörige Themen