在 MFC(Microsoft Foundation Classes)中,CHeaderCtrl::GetOrderArray 方法用于获取标头控件的列顺序数组。该方法的原型为:
BOOL GetOrderArray(int iCount, LPINT piArray) const;

参数:
  •  iCount: 传递 piArray 数组的大小。

  •  piArray: 指向一个 int 数组的指针,用于接收列的顺序。


返回值:
  •  如果函数成功,返回非零值;如果失败,返回零。


功能:
该方法用于获取标头控件中列的顺序数组。这个数组包含标头项的索引,表示它们在控件中的显示顺序。

使用示例:
CHeaderCtrl headerCtrl; // 假设已经创建了标头控件对象
int itemCount = headerCtrl.GetItemCount();

// 创建数组用于存储列顺序
int* orderArray = new int[itemCount];

// 获取列顺序数组
if (headerCtrl.GetOrderArray(itemCount, orderArray)) {
    // 成功获取列顺序数组
    for (int i = 0; i < itemCount; ++i) {
        int columnIndex = orderArray[i];
        // columnIndex 表示在第 i 个位置的列的索引
        // 其他操作...
    }
} else {
    // 获取失败
}

delete[] orderArray; // 释放分配的内存

在这个示例中,我们使用 GetItemCount 获取标头项的数量,然后创建一个数组并使用 GetOrderArray 获取列的顺序数组。最后,我们可以遍历数组,得到标头项的索引,表示它们在控件中的显示顺序。




转载请注明出处:http://www.zyzy.cn/article/detail/18074/MFC/CHeaderCtrl