共用方式為


HIDP_BUTTON_CAPS結構 (hidpi.h)

HIDP_BUTTON_CAPS 結構包含 HID 控件按鈕 使用方式 功能的相關信息(或一組與 使用範圍相關聯的按鈕)。

語法

typedef struct _HIDP_BUTTON_CAPS {
  USAGE   UsagePage;
  UCHAR   ReportID;
  BOOLEAN IsAlias;
  USHORT  BitField;
  USHORT  LinkCollection;
  USAGE   LinkUsage;
  USAGE   LinkUsagePage;
  BOOLEAN IsRange;
  BOOLEAN IsStringRange;
  BOOLEAN IsDesignatorRange;
  BOOLEAN IsAbsolute;
  USHORT  ReportCount;
  USHORT  Reserved2;
  ULONG   Reserved[9];
  union {
    struct {
      USAGE  UsageMin;
      USAGE  UsageMax;
      USHORT StringMin;
      USHORT StringMax;
      USHORT DesignatorMin;
      USHORT DesignatorMax;
      USHORT DataIndexMin;
      USHORT DataIndexMax;
    } Range;
    struct {
      USAGE  Usage;
      USAGE  Reserved1;
      USHORT StringIndex;
      USHORT Reserved2;
      USHORT DesignatorIndex;
      USHORT Reserved3;
      USHORT DataIndex;
      USHORT Reserved4;
    } NotRange;
  };
} HIDP_BUTTON_CAPS, *PHIDP_BUTTON_CAPS;

成員

UsagePage

指定使用量或使用量範圍的 使用量頁面

ReportID

指定包含使用方式或使用範圍之 HID 報表的報表標識碼。

IsAlias

指出,如果 TRUE,按鈕 具有一組別名用法。 否則,如果 IsAliasFALSE,則按鈕只有一個使用方式。

BitField

包含與輸入、輸出或功能主要專案相關聯的數據欄位(一或兩個字節)。

LinkCollection

指定 最上層集合連結集合陣列中 連結集合 的索引, 包含使用方式或使用範圍。 如果 LinkCollection 為零,則使用量或使用範圍會包含在最上層集合中。

LinkUsage

指定包含使用方式或使用範圍的連結集合使用方式。 如果 LinkCollection 為零,LinkUsage 會指定最上層集合的使用方式。

LinkUsagePage

指定包含使用方式或使用範圍之連結集合的使用方式頁面。 如果 LinkCollection 為零,LinkUsagePage 指定最上層集合的使用頁面。

IsRange

指定 如果 TRUE,則結構描述使用範圍。 否則,如果 IsRangeFALSE,則結構描述單一用法。

IsStringRange

指定如果 TRUE,則使用方式或使用範圍具有一組字串描述元。 否則,如果 IsStringRangeFALSE,則使用方式或使用範圍具有零或一個字串描述元。

IsDesignatorRange

指定如果 TRUE,則使用方式或使用範圍具有一組指定項。 否則,如果 IsDesignatorRangeFALSE,則使用量或使用範圍具有零或一個指示項。

IsAbsolute

指定如果 TRUE,按鈕使用方式或使用範圍會提供絕對數據。 否則,如果 IsAbsoluteFALSE,則按鈕數據會是上一個值的狀態變更。

ReportCount

HID 定義的報表計數。 從 API 2.0 版開始提供。 呼叫 HIDP_GetVersion 函式以取得 API 版本。

Reserved2

保留供內部系統使用。

Reserved[9]

保留供內部系統使用。

Range

指定如果isRange 為 TRUE,則指定使用範圍的相關信息。 否則,如果 IsRangeFALSENotRange 包含單一使用方式的相關信息。

Range.UsageMin

表示內含上限是由 range.UsageMax 指定其內含上限的內含使用量範圍下限。

Range.UsageMax

表示使用範圍內含下限的內含上限,Range.UsageMin表示。

Range.StringMin

表示範圍字串描述元的內含下限(以字串最小值和字串最大值專案指定),其內含上限是由 range.StringMax 表示。

Range.StringMax

表示字串描述元範圍的內含上限(由字串最小值和字串最大值專案指定),其內含下限是由 range.StringMin 表示。

Range.DesignatorMin

表示指定範圍範圍的內含下限(由指示項下限和指示項最大專案指定),其內含下限是由 Range.DesignatorMax表示。

Range.DesignatorMax

表示指定範圍範圍的內含上限(由指示項下限和指示項最大專案指定),其內含下限是由 range.DesignatorMin表示。

Range.DataIndexMin

表示循序 數據索引範圍的內含下限, 對應、一對一和相同順序,與使用範圍 Range.UsageMin 所指定的使用量Range.UsageMax

Range.DataIndexMax

表示連續數據索引範圍的內含上限,這些索引會以一對一和相同順序對應至使用範圍所指定的使用量,Range.UsageMinRange.UsageMax

NotRange

指定如果isRange isRange FALSE,則指定單一使用方式的相關信息。 否則,如果 isRange TRUERange 會包含使用範圍的相關信息。

NotRange.Usage

表示 使用量識別碼

NotRange.Reserved1

保留供內部系統使用。

NotRange.StringIndex

指出 NotRange.Usage 所指定之使用量的字串描述元標識符。

NotRange.Reserved2

保留供內部系統使用。

NotRange.DesignatorIndex

表示 NotRange.Usage所指定之使用量的指示項識別碼。

NotRange.Reserved3

保留供內部系統使用。

NotRange.DataIndex

指出 NotRange.Usage 所指定之使用量的數據索引,

NotRange.Reserved4

保留供內部系統使用。

言論

用戶端藉由呼叫 HidP_GetButtonCapsHidP_GetSpecificButtonCaps來取得 按鈕功能陣列。 這些例程會傳回呼叫端配置緩衝區中HIDP_BUTTON_CAPS結構的陣列。 必要的緩衝區長度是在 HidP_GetCaps所傳回的 HIDP_CAPS 結構中指定。

如需 HID 控制項值功能的相關信息,請參閱 集合功能值功能數位

當報表描述元宣告輸入、輸出或功能主專案時,其使用方式宣告比 ReportCount少,則最後一個使用方式會套用至該主要專案中所有剩餘未指定的計數。 例如,您可能有需要許多欄位來描述的數據,可能是緩衝的位元組。 在此情況下,只會為這些相關聯的欄位配置一個值上限結構,全都使用相同的用法,ReportCount 反映涉及的欄位數目。 通常 ReportCount 為一。 若要存取這類值結構中的所有欄位,需要使用 HidP_GetUsageValueArrayHidP_SetUsageValueArrayHidP_GetUsageValueHidP_SetScaledUsageValue 函式也會運作。 不過,這些函式只適用於 結構的第一個字段。

要求

要求 價值
標頭 hidpi.h (包括 Hidpi.h)

另請參閱