ImageList_DragLeave 是 Win32 API 中用于在图像列表的拖放操作中标记离开拖放目标的函数,该函数在 Commctrl.h 头文件中声明。以下是 ImageList_DragLeave 函数的基本信息:BOOL ImageList_DragLeave( HWND hwndLock);参数说明: hwndLock:在拖放期间,将在指定窗口的客户区内锁定鼠标。该函数返回一个 BOOL 类型的值,如果成功,返回值为非零;如果失败,返回值为零。在拖放操作中,ImageList_DragLeave 函数通常与 ImageList_DragEnter 和 ImageList_DragMove 一起使用,以实现图像的拖放。以下是一个简单的示例代码,演示如何使用 ImageList_DragLeave 函数:#include <windows.h>#include <commctrl.h>LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { ...
ImageList_DragEnter 函数是 Win32 API 中用于在图像列表的拖放操作中标记拖放的起始点的函数,该函数在 Commctrl.h 头文件中声明。以下是 ImageList_DragEnter 函数的基本信息:BOOL ImageList_DragEnter( HWND hwndLock, int x, int y);参数说明: hwndLock:在拖放期间,将在指定窗口的客户区内锁定鼠标。 x:以屏幕坐标表示的拖放操作的起始点的 x 坐标。 y:以屏幕坐标表示的拖放操作的起始点的 y 坐标。该函数返回一个 BOOL 类型的值,如果成功,返回值为非零;如果失败,返回值为零。在拖放操作中,ImageList_DragEnter 函数通常与 ImageList_DragMove 和 ImageList_DragLeave 一起使用,以实现图像的拖放。以下是一个简单的示例代码,演示如何使用 ImageList_DragEnter 函数:#include <windows.h>#include <commctrl.h...
ImageList_Destroy 是 Win32 API 中用于销毁图像列表的函数,该函数在 Commctrl.h 头文件中声明。以下是 ImageList_Destroy 函数的基本信息:BOOL ImageList_Destroy( HIMAGELIST himl);参数说明: himl:要销毁的图像列表的句柄。该函数返回一个 BOOL 类型的值,如果成功,返回值为非零;如果失败,返回值为零。使用 ImageList_Destroy 函数可以释放由 ImageList_Create 函数创建的图像列表所占用的资源。在不再需要图像列表时,应该调用此函数来避免内存泄漏。以下是一个简单的示例代码,演示如何使用 ImageList_Destroy 函数:#include <windows.h>#include <commctrl.h>int main() { // 初始化 Common Controls INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(INITCOMMONCONTROLSEX); ...
ImageList_Create 是 Win32 API 中用于创建图像列表的函数,该函数在 Commctrl.h 头文件中声明。以下是 ImageList_Create 函数的基本信息:HIMAGELIST ImageList_Create( int cx, int cy, UINT flags, int cInitial, int cGrow);参数说明: cx:图像的宽度。 cy:图像的高度。 flags:图像列表的标志,可以是以下值的组合: - ILC_COLOR:指定图像列表使用一个颜色。 - ILC_COLOR4:指定图像列表使用 4 位色深。 - ILC_COLOR8:指定图像列表使用 8 位色深。 - ILC_COLOR16:指定图像列表使用 16 位色深。 - ILC_COLOR24:指定图像列表使用 24 位色深。 - ILC_COLOR32:指定图像列表使用 32 位色深。 - ILC_MASK:指定图像列表使用遮罩。 - ILC_MIRROR:对图像列表使用水平镜像。 - 等等,具体请参...
ImageList_BeginDrag 是 Win32 API 中用于开始图像列表拖放操作的函数,该函数在 Commctrl.h 头文件中声明。以下是 ImageList_BeginDrag 函数的基本信息:BOOL ImageList_BeginDrag( HIMAGELIST himlTrack, int iTrack, int dxHotspot, int dyHotspot);参数说明: himlTrack:源图像列表的句柄。 iTrack:拖动的图像在图像列表中的索引。 dxHotspot:拖动时光标的水平偏移。 dyHotspot:拖动时光标的垂直偏移。该函数返回一个 BOOL 类型的值,表示操作是否成功。如果成功,返回值为非零;如果失败,返回值为零。ImageList_BeginDrag 函数用于启动图像列表的拖放操作。在调用这个函数之后,可以使用 ImageList_DragMove 和 ImageList_DragShowNolock 等函数来处理拖放操作。通常,与拖放相关的操作需要在拖放的消息处理函数中进行。以下是一...
ImageList_AddMasked 是 Win32 API 中用于将图像添加到图像列表的函数之一。这个函数在 Commctrl.h 头文件中声明。以下是 ImageList_AddMasked 函数的基本信息:int ImageList_AddMasked( HIMAGELIST himl, HBITMAP hbmImage, COLORREF crMask);参数说明: himl:图像列表的句柄。 hbmImage:包含图像的位图句柄。 crMask:指定在图像中表示透明部分的颜色。该函数返回一个整数值,表示添加的图像的索引。如果失败,返回值为-1。下面是一个简单的示例代码,演示如何使用 ImageList_AddMasked 函数:#include <windows.h>#include <commctrl.h>int main() { // 初始化 Common Controls INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(INITCOMMONCONTROLSEX);...
ImageList_AddIcon 函数是 Win32 API 中用于将图标添加到图像列表的函数。这个函数在 Commctrl.h 头文件中声明。以下是 ImageList_AddIcon 函数的基本信息:int ImageList_AddIcon( HIMAGELIST himl, HICON hIcon);参数说明: himl:图像列表的句柄。 hIcon:要添加的图标的句柄。该函数返回一个整数值,表示添加的图像的索引。如果失败,返回值为-1。下面是一个简单的示例代码,演示如何使用 ImageList_AddIcon 函数:#include <windows.h>#include <commctrl.h>int main() { // 初始化 Common Controls INITCOMMONCONTROLSEX icex; icex.dwSize = sizeof(INITCOMMONCONTROLSEX); icex.dwICC = ICC_WIN95_CLASSES; // 或其他需要的标志 InitCom...
Header_SetUnicodeFormat 函数是用于设置报头控件(Header Control)的 Unicode 格式的函数。该函数在 Commctrl.h 头文件中声明。以下是 Header_SetUnicodeFormat 函数的基本信息:BOOL Header_SetUnicodeFormat( HWND hwnd, BOOL fUnicode);参数说明: hwnd:报头控件的句柄。 fUnicode:如果为 TRUE,则报头控件使用 Unicode 格式;如果为 FALSE,则使用 ANSI 格式。该函数返回一个 BOOL 类型的值,如果成功,返回值为非零;如果失败,返回值为零。Unicode 格式和 ANSI 格式的区别在于字符编码方式。Unicode 使用 16 位或 32 位编码表示字符,而 ANSI 使用 8 位编码。在 Windows 中,通常建议使用 Unicode 格式,特别是在开发国际化应用程序时,因为它能够更好地支持各种语言和字符集。以下是一个简单的示例代码,演示如何使用 Header_SetUnicodeFormat 函数:#include &...
Header_SetStateImageList 函数是用于在报头控件(Header Control)中设置状态图像列表的函数。该函数在 Commctrl.h 头文件中声明。以下是 Header_SetStateImageList 函数的基本信息:HIMAGELIST Header_SetStateImageList( HWND hwnd, HIMAGELIST himl);参数说明: hwnd:报头控件的句柄。 himl:要设置的状态图像列表的句柄。该函数返回先前与报头控件关联的状态图像列表的句柄。如果之前没有关联状态图像列表,则返回 NULL。状态图像列表是一个包含图像的列表,通常用于显示项的状态图标,例如复选框的选中状态。在报头控件中,状态图像列表可以用于显示各个项的状态图标。以下是一个简单的示例代码,演示如何使用 Header_SetStateImageList 函数:#include <windows.h>#include <commctrl.h>int main() { // 初始化 Common Controls INIT...
Header_SetOrderArray 函数用于设置报头控件(Header Control)中的项的显示顺序。这个函数在 Commctrl.h 头文件中声明。以下是 Header_SetOrderArray 函数的基本信息:BOOL Header_SetOrderArray( HWND hwnd, int iCount, LPINT lpi);参数说明: hwnd:报头控件的句柄。 iCount:指定数组中的项数。 lpi:指向一个整数数组的指针,其中包含报头控件项的索引。这些索引表示项的新显示顺序。该函数返回一个 BOOL 类型的值,如果成功,返回值为非零;如果失败,返回值为零。请注意,该函数用于设置报头控件中项的显示顺序,可以通过调用 Header_GetOrderArray 函数来获取当前的项顺序。这个函数的使用通常涉及到获取当前的项顺序,修改它,然后通过调用 Header_SetOrderArray 函数来设置新的顺序。以下是一个简单的示例代码,演示如何使用 Header_SetOrderArray 函数:#include <windows.h>#incl...
在 Win32 API 中,Header_SetItem 函数用于设置报头控件(Header Control)中的项的属性。这个函数在 Commctrl.h 头文件中声明。以下是 Header_SetItem 函数的基本信息:int Header_SetItem( HWND hwndHD, int iItem, const HD_ITEM *pitem);参数说明: hwndHD:报头控件的句柄。 iItem:要设置的项的索引。 pitem:指向 HD_ITEM 结构的指针,其中包含有关要设置的项的信息。HD_ITEM 结构定义如下:typedef struct { UINT mask; int cxy; LPWSTR pszText; HBITMAP hbm; int cchTextMax; int fmt; LPARAM lParam;#if (_WIN32_IE >= 0x0500) int iImage; int iOrder;#endif#if (_WIN32...
Header_SetImageList 函数用于设置标题栏控件(Header control)中的图像列表。该函数在 Commctrl.h 头文件中声明。以下是该函数的声明:HIMAGELIST Header_SetImageList( HWND hwndHdr, HIMAGELIST himl);参数说明: hwndHdr:标题栏控件的句柄。 himl:要设置的图像列表的句柄。如果为 NULL,则表示移除当前的图像列表。函数返回值是之前与标题栏相关联的图像列表的句柄。如果没有与标题栏相关联的图像列表,则返回 NULL。使用该函数可以为标题栏中的每个项关联一个图像,以便在标题上显示图标。以下是一个简单的示例代码,演示如何使用 Header_SetImageList 函数:#include <Commctrl.h>// 初始化 CommCtrl 库// 创建标题栏控件HWND hwndHeader = CreateWindowEx(0, WC_HEADER, L"Header Control", WS_CHILD | WS_VISIBLE,...
在Win32 API中,Header_SetHotDivider 函数用于设置标题栏控件(Header control)中的热点分隔条(hot divider)。该函数在 Commctrl.h 头文件中声明。以下是该函数的声明:BOOL Header_SetHotDivider( HWND hwndHD, BOOL fPos, int iPos);参数说明: hwndHD:标题栏控件的句柄。 fPos:一个布尔值,指定是否将 iPos 参数用作新的热点分隔条位置。如果为 TRUE,表示使用 iPos;如果为 FALSE,表示使用当前的鼠标位置。 iPos:新的热点分隔条位置。只有在 fPos 为 TRUE 时才使用此参数。函数返回值为 BOOL 类型,表示操作是否成功。如果成功,返回 TRUE;否则返回 FALSE。请注意,要使用该函数,你需要在代码中包含 <Commctrl.h> 头文件,并链接到 Comctl32.lib 库。下面是一个简单的示例代码,演示如何使用 Header_SetHotDivider 函数:#include <Commctrl.h&g...
Header_OrderToIndex 函数用于将当前的显示顺序中的列索引转换为实际的列索引。在用户通过拖放列头来调整列的显示顺序时,你可能需要使用这个函数来获取实际的列索引。以下是 Header_OrderToIndex 函数的基本信息:int Header_OrderToIndex( HWND hwnd, int iOrder);参数说明: hwnd: 列表头控件的句柄。 iOrder: 列的当前显示顺序中的索引。返回值: 返回实际列的索引。如果失败,返回 -1。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄int orderIndex = // 当前显示顺序中的列索引int actualIndex = Header_OrderToIndex(hwndHeader, orderIndex);if (actualIndex != -1) { // 成功获取实际列索引 wprintf(L"Order index %d corresponds to actual index...
Header_InsertItem 函数用于在列表头控件(Header Control)中插入一个新的项。这个函数允许你在运行时动态地添加新的列或项到列表头。以下是 Header_InsertItem 函数的基本信息:int Header_InsertItem( HWND hwnd, int i, const HDITEM *phdi);参数说明: hwnd: 列表头控件的句柄。 i: 要插入的项的索引,如果为 -1,则表示在列表头的末尾插入。 phdi: 一个指向 HDITEM 结构的指针,包含有关要插入的项的信息。返回值: 如果函数成功,返回新插入项的索引。 如果函数失败,返回 -1。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄HDITEM hdi = {0};hdi.mask = HDI_TEXT | HDI_WIDTH; // 指定要设置的信息类型hdi.pszText = L"New Column"; // 列的文本hd...
Header_GetStateImageList 函数用于获取列表头控件(Header Control)中与状态图像相关联的图像列表(image list)。状态图像通常是用于显示项的状态,比如排序状态等。以下是 Header_GetStateImageList 函数的基本信息:HIMAGELIST Header_GetStateImageList( HWND hwnd);参数说明: hwnd: 列表头控件的句柄。返回值: 返回与列表头相关联的状态图像列表的句柄(HIMAGELIST)。如果列表头没有关联状态图像列表,则返回 NULL。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄HIMAGELIST hStateImageList = Header_GetStateImageList(hwndHeader);if (hStateImageList != NULL) { // 对状态图像列表进行操作,例如添加或删除状态图像} else { // 列表头未关联状态图像列表}通过获取状态图...
Header_GetOrderArray 函数用于检索列表头控件(Header Control)中列的显示顺序数组。该函数允许你获取列的实际显示顺序,即用户通过拖放列头调整列的次序后的结果。以下是 Header_GetOrderArray 函数的基本信息:BOOL Header_GetOrderArray( HWND hwnd, int iCount, PINT lpiArray);参数说明: hwnd: 列表头控件的句柄。 iCount: 指定 lpiArray 缓冲区的大小,即能够存储的列数。 lpiArray: 指向 int 数组的指针,用于接收列的显示顺序。返回值: 如果函数成功,返回 TRUE。 如果函数失败,返回 FALSE。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄int columnCount = // 获取列的总数int *orderArray = (int*)malloc(sizeof(int) * columnCount);BOOL bSuccess = He...
Header_GetItemRect 函数用于获取列表头控件(Header Control)中指定项的矩形区域信息。这个函数可以帮助你确定列的位置和大小。以下是 Header_GetItemRect 函数的基本信息:BOOL Header_GetItemRect( HWND hwnd, int iItem, LPRECT lprc);参数说明: hwnd: 列表头控件的句柄。 iItem: 要获取矩形信息的项的索引。 lprc: 指向 RECT 结构的指针,用于接收项的矩形区域信息。返回值: 如果函数成功,返回 TRUE。 如果函数失败,返回 FALSE。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄int iItem = // 要获取矩形信息的项的索引RECT rcItem = {0};BOOL bSuccess = Header_GetItemRect(hwndHeader, iItem, &rcItem);if (bSuccess) { // 获取矩形信息成功,可以使...
Header_GetItemCount 函数用于获取列表头控件(Header Control)中的项数,即列表头中的列数。以下是 Header_GetItemCount 函数的基本信息:int Header_GetItemCount( HWND hwnd);参数说明: hwnd: 列表头控件的句柄。返回值: 返回列表头控件中的项数(列数)。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄int itemCount = Header_GetItemCount(hwndHeader);wprintf(L"Number of items in the header: %d\n", itemCount);这个函数可以帮助你获取列表头控件中当前有多少列,可以在编程时根据需要进行相应的处理。
Header_GetItem 函数用于获取列表头控件(Header Control)中指定项的信息。这个函数允许你检索有关特定列表头项的属性,如文本、宽度、图标等。以下是 Header_GetItem 函数的基本信息:BOOL Header_GetItem( HWND hwnd, int iItem, HDITEM * phdi);参数说明: hwnd: 列表头控件的句柄。 iItem: 要获取信息的项的索引。 phdi: 一个指向 HDITEM 结构的指针,用于接收项的信息。返回值: 如果函数成功,返回 TRUE。 如果函数失败,返回 FALSE。使用示例:#include <Commctrl.h>// ...HWND hwndHeader = // 获取列表头的句柄int iItem = // 要获取信息的项的索引HDITEM hdi = {0};hdi.mask = HDI_TEXT | HDI_WIDTH; // 指定要获取的信息,比如文本和宽度hdi.pszText = (LPWSTR)malloc(sizeo...
最新文章