コマンドボタンにEXEファイルのアイコンの表示に
ついてWebで色々と調べてやってみたのですが、
どうも上手くいきません・・・。(^^;
下記の条件・コードでやってみました。
原因等わかる方いましたら、どうか宜しくお願いします。
---環境---
OS:Windows2000 Pro
VB:VB6 Pro SP6
---ソースコード(標準モジュール)---
Public Declare Function DrawIconEx Lib "USER32" (ByVal hDC&, ByVal xLeft&, _
ByVal yTop&, ByVal hIcon&, ByVal cxWidth&, ByVal cyWidth&, ByVal istepIfAniCur&, _
ByVal hbrFlickerFreeDraw&, ByVal diFlags&) As Long
Public Declare Function ExtractIconEx Lib "shell32.dll" Alias "ExtractIconExA" _
(ByVal lpszFile As String, ByVal nIconIndex As Long, phiconLarge As Long, _
phiconSmall As Long, ByVal nIcons As Long) As Long
Public Const DI_NORMAL = &H3
---ソースコード(フォームモジュール)---
Private Sub Command1_Click()
Dim Ret As Long
Dim nFile As String
Dim L As Long
Dim S As Long
nFile = "C:\Windows\calc.exe"
Ret = ExtractIconEx(nFile, 0, L, S, 1)
DrawIconEx Form1.Picture1.hDC, 0, 0, L, 0, 0, vbNull, 0, DI_NORMAL
Set Form1.Command1.Picture = Form1.Picture1.Image
End Sub
お礼
お返事どうもありがとうございます。^^ あれから自分でも検索しつづけていた所、つい先ほど PictureボックスのAutoRedrawの変更が必要と分かりました。 アドバイスありがとうございました。