我正在使用 Visual Studio C++ 2008 v 3.5 SP1(带有功能包)。
通过 将项目添加到 MFCCListCtrl
对象后InsertItem()
,在大多数视图模式中,它们的图标以相反的行顺序显示,但正确的列顺序。我没有使用“报告”( LV_VIEW_DETAILS
) 模式,所以我提到的行和列是指图标在网格或布局中的排序方式。
我这样添加它们:
for (int i = 0; i < item_count; ++i)
list_ctrl.InsertItem (i, item_arr[i].text, i);
并希望它们看起来像这样:
icon 0
icon 1
icon 2
:
icon N-2
icon N-1
(其中图标 # 匹配其项目 # 并且 N 是item_count
)。
但是,在“大图标”、“小图标”和“平铺”( LV_VIEW_ICON
, LV_VIEW_SMALLICON
, LV_VIEW_TILE
) 模式下,它们看起来像这样:
icon N-1
icon N-2
:
icon 2
icon 1
icon 0
它们仅在“列表”( LV_VIEW_LIST
) 模式下以正确的顺序出现,但随后它们水平排列和滚动:
icon 0 icon 1 icon 2 .. icon N-2 icon N-1
(它们是否全部出现在单行/列中仅仅是图标和控件的相对大小/尺寸的函数。)似乎我可以有垂直方向但相反的顺序,或者正确的顺序但错误的方向!
我如何以我想要的方式得到东西?我在文档或论坛中没有看到任何关于此的内容 - 仅关于按文本排序项目(我不想要)或在详细信息/报告模式下排序列的顺序(我不想要)。