システムからアイコンを取得しようとしています。私はこのアイコンを設定したい場所で、画面上のHICONを符号なしロングに変換する
SHFILEINFO info; //For getting information about the file
if (::SHGetFileInfo(ucPath.GrabTString(), 0,&info, sizeof(info), SHGFI_ICON | SHGFI_SMALLICON | SHGFI_SHELLICONSIZE) != NULL)
{
//Control view of the
if (iconView != NULL){
HDC hDC = GetDC(NULL); //Get the screen DC
DrawIconEx(hDC, 300, 200, info.hIcon, 0, 0, 0, NULL, DI_NORMAL); //Draw icon on 300, 200 location
ReleaseDC(NULL, hDC);
//following line is not working
iconView->SetRsrcID((unsigned long) info.hIcon);
}
::DestroyIcon(info.hIcon);
}
(300、200)それは私のアイコンを示し、 :SHGetFileInfoを使用して、私は次のコードでこのHICONをテストしHICON、
を得ましたツリービューには、リソースIDが必要です。 このハンドルをunsigned longに変換する方法を知っていればお勧めします。
おかげで、 PraveenさんMamdge
アイコンビューの種類は何ですか? –