コマンドボタンにEXEのアイコンを表示させたいのですが方法が分かりません。SHGetFileInfo()関数を使いアイコンの取得までは分かるのですが、コマンドボタンのPictureに表示する方法が分かりません。
VB6を使用しています。
OleCreatePictureIndirect を使うと
アイコンハンドルからVB6のPictureオブジェクトに変換できます。
subaruさん、ありがとうございます。OleCreatePictureIndirectについて自分なりに調べてみたのですが、難しすぎて理解できません。何か参考になるサイトなりありませんでしょうか?
編集 削除グーグル先生に聞いて最初に出てきたページですが参考になりますか?
http://support.microsoft.com/kb/161299/ja
上記ページの CreateBitmapPicture 関数ではビットマップの変換なので、
OleCreatePictureIndirect の第1引数に渡す
PICTDESC 構造体をアイコン用に修正してください。
こんな感じで定義しておけばいいと思います。
Type PICTDESC
cbSizeofstruct As Long
picType As Long
hicon As OLE_HANDLE
reserved1 As Long
reserved2 As Long
End Type
検索例として。
http://www.google.co.jp/codesearch?hl=ja&lr=&q=OleCreatePictureIndirect+icon+lang%3Abasic