TNB Library
|
拡張アイコン管理クラス [詳解]
#include <TnbIconManagerEx.h>
公開型 | |
enum | ESystemIconId { E_APPLICATION = (INT_PTR)(IDI_APPLICATION) , E_ASTERISK = (INT_PTR)(IDI_ASTERISK) , E_ERROR = (INT_PTR)(IDI_ERROR) , E_EXCLAMATION = (INT_PTR)(IDI_EXCLAMATION) , E_HAND = (INT_PTR)(IDI_HAND) , E_INFORMATION = (INT_PTR)(IDI_INFORMATION) , E_QUESTION = (INT_PTR)(IDI_QUESTION) , E_WARNING = (INT_PTR)(IDI_WARNING) , E_WINLOGO = (INT_PTR)(IDI_WINLOGO) } |
システムのアイコンID値 [詳解] | |
公開メンバ関数 | |
void | Attach (HICON hIcon) |
[指定] ハンドル管理. [詳解] | |
CIconManagerEx (void) | |
コンストラクタ [詳解] | |
HCURSOR | CreateCursor (DWORD xHotspot, DWORD yHotspot, CBitmapHandle bmp, int parsent=100, COLORREF maskColor=CLR_AUTOSELECT) |
[作成] ビットマップから作成. [詳解] | |
HCURSOR | CreateCursor (DWORD xHotspot, DWORD yHotspot, CBitmapHandle bmpColor, CBitmapHandle bmpMask) |
[作成] ビットマップから作成. [詳解] | |
HICON | CreateIcon (CBitmapHandle bmp, COLORREF maskColor=CLR_AUTOSELECT) |
[作成] ビットマップから作成. [詳解] | |
HICON | CreateIcon (CBitmapHandle bmpColor, CBitmapHandle bmpMask) |
[作成] ビットマップから作成. [詳解] | |
bool | Destroy (HICON hIcon) |
[開放] ハンドル開放. [詳解] | |
bool | Destroy (int iIconResourceId) |
[開放] ハンドル開放. [詳解] | |
void | DestroyAll (void) |
[開放] 全ハンドル開放. [詳解] | |
HICON | Extract (LPCTSTR lpszFile, UINT iconIndex) |
[取得] ファイルから抽出. [詳解] | |
INT_PTR | ExtractNumber (LPCTSTR lpszFile) |
[取得] ファイルから抽出可能数. [詳解] | |
HICON | LoadResource (int iIconResourceId) |
[取得] リソースから取得 [詳解] | |
HICON | LoadResource (int iIconResourceId, HINSTANCE hIns) |
[取得] リソースから取得 [詳解] | |
HICON | LoadSystem (ESystemIconId systemId) |
[取得] システムから取得 [詳解] | |
HICON | operator[] (int iIconResourceId) |
[取得] リソースから取得 [詳解] | |
virtual | ~CIconManagerEx (void) |
デストラクタ [詳解] | |
限定公開メンバ関数 | |
void | m_Destroy (HICON h) |
[破棄] ハンドル破棄. [詳解] | |
拡張アイコン管理クラス
本クラスを使用してアイコンをロードすると、開放すべきアイコンの開放漏れを防ぎます。 また、リソースIDとハンドルを関連付けて記憶しておくため、キャッシュ的な使い方が可能です。 カーソルもアイコンと同様に本クラスで管理することが可能です。 本クラスは、ビットマップからアイコン作成( CreateIcon() )、カーソル作成( CreateCursor() )が増えている以外、 CIconManager とまったく同じです。
TnbIconManagerEx.h の 42 行目に定義があります。
|
inherited |
システムのアイコンID値
TnbIconManager.h の 105 行目に定義があります。
CIconManagerEx | ( | void | ) |
コンストラクタ
TnbIconManagerEx.h の 84 行目に定義があります。
|
virtual |
デストラクタ
TnbIconManagerEx.h の 89 行目に定義があります。
|
inherited |
[指定] ハンドル管理.
指定のハンドルを本インスタンスで管理するようにします。
hIcon | アイコンハンドル。 ここで指定したアイコンハンドルは APIの DestroyIcon() を使用しないでください。 |
TnbIconManager.h の 289 行目に定義があります。
HCURSOR CreateCursor | ( | DWORD | xHotspot, |
DWORD | yHotspot, | ||
CBitmapHandle | bmp, | ||
int | parsent = 100 , |
||
COLORREF | maskColor = CLR_AUTOSELECT |
||
) |
[作成] ビットマップから作成.
指定のビットマップからカーソルを作成します。
xHotspot | カーソルのホットスポットの X 座標を指定します。 |
yHotspot | カーソルのホットスポットの Y 座標を指定します。 |
bmp | ビットマップ ハンドルを指定します。 |
parsent | カーソル表示時の濃さ(単位;%)。 省略なら指定のビットマップのアルファチャネルがそのまま適応されます。 0 を指定すると、半透明しなくなります。 |
maskColor | マスク色を指定します。 省略すると、BITMAPの左下の色をマスク色とします。 CLR_INVALID を指定すると透過色なしでアイコンを作成します。 |
NULL以外 | カーソルハンドル(アイコンハンドル)。 APIの DestroyIcon() DestroyCursor() は使用しないでください。 |
NULL | エラー |
TnbIconManagerEx.h の 157 行目に定義があります。
HCURSOR CreateCursor | ( | DWORD | xHotspot, |
DWORD | yHotspot, | ||
CBitmapHandle | bmpColor, | ||
CBitmapHandle | bmpMask | ||
) |
[作成] ビットマップから作成.
指定のビットマップからカーソルを作成します。
xHotspot | カーソルのホットスポットの X 座標を指定します。 |
yHotspot | カーソルのホットスポットの Y 座標を指定します。 |
bmpColor | XOR ビットマスク(画像)用のビットマップ ハンドルを指定します。 |
bmpMask | AND ビットマスク(透過)用のビットマップ ハンドルを指定します。 |
NULL以外 | カーソルハンドル(アイコンハンドル)。 APIの DestroyIcon() DestroyCursor() は使用しないでください。 |
NULL | エラー |
TnbIconManagerEx.h の 136 行目に定義があります。
HICON CreateIcon | ( | CBitmapHandle | bmp, |
COLORREF | maskColor = CLR_AUTOSELECT |
||
) |
[作成] ビットマップから作成.
指定のビットマップからアイコンを作成します。
bmp | ビットマップ 。 |
maskColor | マスク色を指定します。 省略すると、BITMAPの左下の色をマスク色とします。 CLR_INVALID を指定すると透過色なしでアイコンを作成します。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー |
TnbIconManagerEx.h の 119 行目に定義があります。
HICON CreateIcon | ( | CBitmapHandle | bmpColor, |
CBitmapHandle | bmpMask | ||
) |
[作成] ビットマップから作成.
指定のビットマップからアイコンを作成します。
bmpColor | XOR ビットマスク(画像)用のビットマップを指定します。 |
bmpMask | AND ビットマスク(透過)用のビットマップを指定します。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー |
TnbIconManagerEx.h の 102 行目に定義があります。
|
inherited |
[開放] ハンドル開放.
hIcon | 本インスタンスで管理しているアイコンハンドル。 |
true | 成功。 |
false | 失敗(本インスタンスで管理していないハンドルが指定された)。 |
TnbIconManager.h の 171 行目に定義があります。
|
inherited |
[開放] ハンドル開放.
iIconResourceId | 本インスタンスでロードしたリソースID。 |
true | 成功。 |
false | 失敗(本インスタンスで管理していないリソースIDが指定された)。 |
TnbIconManager.h の 156 行目に定義があります。
|
inherited |
|
inherited |
[取得] ファイルから抽出.
lpszFile | ファイル名。ファイルは、 EXE DLL ICO ファイルが指定できます。 |
iconIndex | インデックス。 ExtractNumber() で得られる「アイコン数」未満を指定できます。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー(存在しない) |
TnbIconManager.h の 271 行目に定義があります。
|
inherited |
[取得] ファイルから抽出可能数.
lpszFile | ファイル名。ファイルは、 EXE DLL ICO ファイルが指定できます。 |
1以上 | ファイル内のアイコン数。 |
0 | エラー(存在しない) |
TnbIconManager.h の 257 行目に定義があります。
|
inherited |
[取得] リソースから取得
iIconResourceId | アイコンリソースID。 ×-1 した値を指定することで、 小さい ICON をロードできます。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー(存在しない) |
TnbIconManager.h の 219 行目に定義があります。
|
inherited |
[取得] リソースから取得
iIconResourceId | アイコンリソースID。 ×-1 した値を指定することで、 小さい ICON をロードできます。 |
hIns | インスタンス。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー(存在しない) |
TnbIconManager.h の 198 行目に定義があります。
|
inherited |
[取得] システムから取得
systemId | システムアイコンID。 |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー(存在しない) |
TnbIconManager.h の 244 行目に定義があります。
|
protectedinherited |
|
inherited |
[取得] リソースから取得
iIconResourceId | アイコンリソースID |
NULL以外 | アイコンハンドル。 APIの DestroyIcon() は使用しないでください。 |
NULL | エラー(存在しない) |
TnbIconManager.h の 231 行目に定義があります。