当前位置: 首页 > 文档资料 > DirectX 中文教程 >

回调函数

优质
小牛编辑
126浏览
2023-12-01

回调函数

返回上级

      DDEnumCallback

      DDEnumCallbackEx

      EnumModesCallback

      EnumSurfacesCallback

      EnumVideoCallback

    1. DDEnumCallback

      返回目录

    2. DDEnumCallback是用于DirectDrawEnumerate函数的应用程序定义的回调函数。

      BOOL WINAPI DDEnumCallback(
      GUID FAR *lpGUID,
      LPSTR lpDriverDescription,
      LPSTR lpDriverName,
      LPVOID lpContext
      );

      参数:

      lpGUID
      DirectDraw对象的全局唯一标志符(GUID)的地址。

      lpDriverDescription
      包含了设备描述的字符串的地址。

      lpDriverName
      包含了设备名称的字符串的地址。

      lpContext
      一个应用程序定义的结构的地址,将由DirectDrawEnumerate函数传递给回调函数。

      返回值:

      返回DDENUMRET_OK以继续列举。
      返回DDENUMRET_CANCEL以结束。

      备注:

      你可以使用LPDDENUMCALLBACK数据结构来声明一个指向该回调函数的指针变量。

      快速信息:

      Windows NT:适用于4.0或更新版
      Windows:适用于Windows 95或更新版
      Windows CE:不支持
      头文件:ddraw.h
      库文件:无(用户定义)

    3. DDEnumCallbackEx

      返回目录

    4. DDEnumCallbackEx是用于DirectDrawEnumerateEx函数的应用程序定义的回调函数。

      BOOL WINAPI DDEnumCallbackEx(
      GUID FAR *lpGUID,
      LPSTR lpDriverDescription,
      LPSTR lpDriverName,
      LPVOID lpContext,
      HMONITOR hm)
      );

      参数:

      lpGUID
      DirectDraw对象的全局唯一标志符(GUID)的地址。

      lpDriverDescription
      包含了设备描述的字符串的地址。

      lpDriverName
      包含了设备名称的字符串的地址。

      lpContext
      一个应用程序定义的结构的地址,将由DirectDrawEnumerate函数传递给回调函数。

      hm
      与列举的DirectDraw对象相关联的显示器句柄。当列举的DirectDraw对象是主设备、一个非显示设备(比如不带2-D能力的3-D加速卡)、或不隶属于桌面的设备时,该参数将为NULL

      返回值:

      返回DDENUMRET_OK以继续列举。
      返回DDENUMRET_CANCEL以结束列举。

      备注:

      你可以使用LPDDENUMCALLBACKEX数据结构来声明一个指向该回调函数的指针变量。

      快速信息:

      Windows NT:适用于4.0或更新版
      Windows:适用于Windows 95或更新版
      Windows CE:不支持
      头文件:ddraw.h
      库文件:无(用户定义)

      请参阅:

      多显示器系统。

    5. EnumModesCallback

      返回目录

    6. EnumModesCallback是用于IDirectDraw2::EnumDisplayModes函数的应用程序定义的回调函数。

      HRESULT WINAPI EnumModesCallback(
      LPDDSURFACEDESC lpDDSurfaceDesc,
      LPVOID lpContext
      );

      参数:

      lpDDSurfaceDesc
      DDSURFACEDESC结构的地址,提供了可用的显示器刷新率和显示模式的描述。该参数为只读。

      lpContext
      一个应用程序定义的结构的地址,将由IDirectDraw2::EnumDisplayModes函数传递给该回调函数。

      返回值:

      返回DDENUMRET_OK以继续列举。
      返回DDENUMRET_CANCEL以结束列举。

      备注:

      你可以使用LPDDENUMMODESCALLBACK数据类型来声明一个指向该回调函数的指针变量。

      快速信息:

      Windows NT:适用于4.0或更新版
      Windows:适用于Windows 95或更新版
      Windows CE:不支持
      头文件:ddraw.h
      库文件:无(用户定义)

    7. EnumSurfacesCallback

      返回目录

    8. EnumSurfacesCallback是用于IDirectDrawSurface3::EnumAttachedSurfaces和IDirectDrawSurface3::EnumOverlayZOrders函数的应用程序定义的回调函数。

      HRESULT WINAPI EnumSurfacesCallback(
      LPDIRECTDRAWSURFACE lpDDSurface,
      LPDDSURFACEDESC lpDDSurfaceDesc,
      LPVOID lpContext
      );

      参数:

      lpDDSurface
      隶属于该页面的页面地址。

      lpDDSurfaceDesc
      一个DDSURFACEDESC结构的地址,包含隶属页面的描述。

      lpContext
      一个应用程序定义的结构的地址,将由IDirectDrawSurface3::EnumAttachedSurfaces或IDirectDrawSurface3::EnumOverlayZOrders函数传递给该回调函数。

      返回值:

      返回DDENUMRET_OK以继续列举。
      返回DDENUMRET_CANCEL以结束列举。

      备注:

      你可以使用LPDDENUMSURFACESCALLBACK数据类型来声明一个指向该回调函数的指针变量。

      快速信息:

      Windows NT:适用于4.0或更新版
      Windows:适用于Windows 95或更新版
      Windows CE:不支持
      头文件:ddraw.h
      库文件:无(用户定义)

    9. EnumVideoCallback

      返回目录

EnumVideoCallback是用于IDDVideoPortContainer::EnumVideoPorts函数的应用程序定义的回调函数。

HRESULT WINAPI EnumVideoCallback(
LPDDVIDEOPORTCAPS lpDDVideoPortCaps,
LPVOID lpContext
);

参数:

lpDDVideoPortCaps
指向DDVIDEOPORTCAPS结构的指针,包含了视频端口的信息,包括ID和特性。该数据为只读。

lpContext
一个应用程序定义的结构的地址,将由IDDVideoPortContainer::EnumVideoPorts函数传递给该回调函数。

返回值:

返回DDENUMRET_OK以继续列举。
返回DDENUMRET_CANCEL以结束列举。

备注:

与视频端口相关的函数不能在EnumVideoCallback回调数中调用,否则返回DDERR_CURRENTLYNOTAVAIL。

你可以使用LPDDENUMVIDEOCALLBACK数据类型来声明一个指向该回调函数的指针变量。

快速信息:

Windows NT:适用于4.0或更新版
Windows:适用于Windows 95或更新版
Windows CE:不支持
头文件:ddraw.h
库文件:无(用户定义)