Icons in der List-Control



  • Hallo,

    Ich habe zu Probezwecken folgenden Code programmiert:

    CList List;
    
    	CString path;
    
    	m_List.InsertColumn(0, "Datei/Verzeichnisse", LVCFMT_LEFT,
    		331, 0);
    
    	m_List.InsertColumn(1, "SEND", LVCFMT_CENTER,
    		45, 1);
    
    	m_List.InsertColumn(2, "FIND", LVCFMT_CENTER,
    		45, 2);
    
    	m_List.InsertColumn(3, "LIST", LVCFMT_CENTER,
    		45, 3);
    
    	// fill in image lists
    	m_pImageList = new CImageList();
    	ASSERT(m_pImageList != NULL);    // serious allocation failure checking
    	m_pImageList->Create(16, 16, true, 4, 4);
    	m_pImageList->Add(AfxGetApp()->LoadIcon(IDI_ICON_YES));
    	m_pImageList->Add(AfxGetApp()->LoadIcon(IDI_ICON_NO));
    
    	m_List.SetImageList(m_pImageList, LVSIL_SMALL);
    
    	int             iItem, iSubItem, iActualItem;
    	LV_ITEM         lvitem;
    	LPTSTR          pStrTemp1, pStrTemp2;
    
    	for (iItem = 0; iItem < 1; iItem++)  // insert the items and subitems into the list view.
    		for (iSubItem = 0; iSubItem < 4; iSubItem++)
    		{
    
    			if(iSubItem == 0)
    				lvitem.mask = LVIF_TEXT;
    			else
    				lvitem.mask = LVIF_IMAGE;
    
    			lvitem.iItem = (iSubItem == 0)? iItem : iActualItem;
    			lvitem.iSubItem = iSubItem;
    
    			// calculate the main and sub-item strings for the current item
    			pStrTemp1= "Pfad";
    			pStrTemp2= "";
    			lvitem.pszText = iSubItem == 0? pStrTemp1 : pStrTemp2;
    
    			lvitem.iImage = 0;
    
    			if (iSubItem == 0)
    				iActualItem = m_List.InsertItem(&lvitem); // insert new item
    			else
    				m_List.SetItem(&lvitem); // modify existing item (the sub-item text)
    		}
    
    	UpdateData(true);
    

    Damit erstelle ich 4 Spalten in einem List Control. In der ersten Spalte soll ein Text stehen und in den 3 letzten sollen nur Icons erscheinen (ohne Text). Wenn ich diesen Code ausführe, erscheint in der ersten Spalte ein Icon UND der Text und in den restlichen Spalten erscheint nichts (nur wenn ich Text eingebe).

    Kann das an den Einstellungen des List Controls liegen (CListCtrl)? Im Dialog-Fenster (unkompiliert) erscheinen nämlich nur in der ersten Spalte die Icons (die restlichen Spaliten existieren gar nicht).

    Hat vielleicht jemand von euch eine Idee an was das liegen könnte??

    Danke

    BigRed


Anmelden zum Antworten