2013-04-17 59 views
0

我正在致力於ListViewwin32api。但是當我用平鋪視圖設置ListView時。那麼子項目不會出現在項目旁邊。 我的代碼如下:帶有平鋪視圖樣式的列表視圖,子項目不顯示?

ListView_SetView(m_hwndListview,LV_VIEW_TILE); 
//Set tile view info 
SIZE size = { 150, 75 }; 
LVTILEVIEWINFO tileViewInfo = {0}; 

tileViewInfo.cbSize = sizeof(tileViewInfo); 
tileViewInfo.dwFlags = LVTVIF_FIXEDSIZE; 
tileViewInfo.dwMask = LVTVIM_COLUMNS | LVTVIM_TILESIZE; 
tileViewInfo.cLines = 3; 
tileViewInfo.sizeTile = size; 

//Set tile info 
LVTILEINFO lvti = {0}; 
int order[2]; 
order[0]=2; 
order[1]=1; 
lvti.cbSize = sizeof(LVTILEINFO); 
lvti.iItem = 0; 
lvti.cColumns = 2; 
lvti.piColFmt = LVCFMT_LEFT; 
lvti.puColumns = PUINT(order); 

ListView_SetTileInfo(m_hwndListview, &lvti); 
ListView_SetTileViewInfo(m_hwndListview, &tileViewInfo); 

有沒有人有想法解決這個問題? 非常感謝!

回答

0

lvti.piColFmt應該是指向列格式值數組的指針,而不是單個值。在你的情況下,它可能是這樣的:

int colfmt[2]; 
colfmt[0] = LVCFMT_LEFT; 
colfmt[1] = LVCFMT_LEFT; 
lvti.piColFmt = colfmt; 

希望幫助!