DIDEVICEIMAGEINFO
コールアウトのあるデバイス イメージまたはオーバーレイ イメージを表示するために必要な情報を格納しています。この構造体は、DIDEVICEIMAGEINFOHEADER 構造体内の配列として IDirectInputDevice8::GetImageInfo メソッドに渡されます。
typedef struct DIDEVICEIMAGEINFO {
TCHAR tszImagePath[MAX_PATH];
DWORD dwFlags;
DWORD dwViewID;
RECT rcOverlay;
DWORD dwObjID;
DWORD dwcValidPts;
POINT rgptCalloutLine[5];
RECT rcCalloutRect;
DWORD dwTextAlign;
} DIDEVICEIMAGEINFO, *LPDIDEVICEIMAGEINFO;
メンバ
- tszImagePath
デバイスのイメージを含むファイルの完全修飾パス。ファイル フォーマットは dwFlags 内で指定されます。デバイスのイメージが使用できない場合、このメンバーは NULL に設定されます。この場合は、アプリケーションの側でデバイス上のコントロールを列挙し、デバイス コントロールに対応するアクションのデフォルト リストを表示する必要があります (DirectX 8.0 より前にほとんどのアプリケーションが使用していた方式と同様)。 - dwFlags
イメージの使用目的を示すフラグ。- DIDIFT_CONFIGURATION
ファイルはデバイス上のアクションの現在の構成を表示するために使用されます。オーバーレイ イメージの座標は、構成イメージの左上隅を基準としています。 - DIDIFT_OVERLAY
ファイル (提供されている場合) は、構成イメージのオーバーレイです。dwViewID、rcOverlay、dwObjID、rgptCalloutLine、rcCalloutRect、および dwTextAlign の各メンバーが有効で、デバイス上の 1 つのコントロールに関するオーバーレイとコールアウト情報の表示に使用されるデータを含んでいます。ファイルが提供されていない場合 (パス文字列がヌル) は、rcOverlay を除く他の関連メンバーすべてが該当します。
- DIDIFT_CONFIGURATION
- dwViewID
デバイス ビュー イメージ (DIDIFT_CONFIGURATION) の場合、これはデバイス ビューの ID です。デバイス コントロール オーバーレイ (DIDIFT_OVERLAY) の場合、この値はイメージとコールアウト情報を重ねて表示するデバイス ビューを示します (ID によって)。 - rcOverlay
デバイス構成イメージの左上隅のピクセルを基準とする座標を使用して、オーバーレイ イメージを描画する範囲の矩形。このメンバーは、DIDIFT_OVERLAY フラグが dwFlags 内で指定されている場合のみ有効です。 - dwObjID
このデバイスのオーバーレイ イメージが対応するコントロール識別子を、DIDFT_* フラグとインスタンス値の組み合わせとして示します。アプリケーションは DIDFT_GETINSTANCE マクロと DIDFT_GetType マクロを使用して、この値を各構成部分にデコードします。このメンバーは、DIDIFT_OVERLAY フラグが dwFlags 内で指定されている場合のみ有効です。 - dwcValidPts
rgptCalloutLine で指定される配列内のポイント数。 - rgptCalloutLine
コールアウト線を示すポイントの座標を指定する POINT 構造体の配列。コールアウト線は、デバイス コントロールをゲーム アクションのキャプションに結び付けます。それぞれの線は、1 つから 4 つまでの線分で構成できます。このメンバーは、DIDIFT_OVERLAY フラグが dwFlags 内で指定されている場合のみ有効です。 - rcCalloutRect
ゲーム アクション文字列を表示する矩形を示す RECT 構造体。文字列が矩形内に収まらない場合は、アプリケーションがクリッピングを処理する必要があります。このメンバーは、DIDIFT_OVERLAY フラグが dwFlags 内で指定されている場合のみ有効です。 - dwTextAlign
rcCalloutRect メンバーによって示される矩形内でのテキストの位置合わせを指定する DWORD 値。1 つの水平方向のアライメント フラグと、1 つの垂直方向のアライメント フラグを組み合わせたものです。このメンバーは、DIDIFT_OVERLAY フラグが dwFlags 内で指定されている場合のみ有効です。 次の水平方向のアライメント フラグが定義されています。- DIDAL_LEFTALIGNED
テキストは左側のボーダーに合わされます。 - DIDAL_CENTERED
テキストは水平方向で中央に合わされます。 - DIDAL_RIGHTALIGNED
テキストは右側のボーダーに合わされます。 次の垂直方向のアライメント フラグが定義されています。 - DIDAL_MIDDLE
テキストは垂直方向で中央に合わされます。 - DIDAL_TOPALIGNED
テキストは上部のボーダーに合わされます。 - DIDAL_BOTTOMALIGNED
テキストは下部のボーダーに合わされます。
- DIDAL_LEFTALIGNED