掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ListViewにファイルに関連づけられたアイコンを付けるには? (ID:14565)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
通りすがりさんご指導ありがとうございます。長文になりますが、どこをはしょったらいいか解りませんので全文書きました。ごめん下さい。 私のDelphiは WinXP 6 Personalフリー版です。方向性が見えましたので 下記の例を見つけましたので例1、例2をテストしました。 例1ではExtractIcon は、作動しますが ExtractIconEx()は第4パラメータでコンパイルできません。 エラー表示は、変数実パラメータと変数仮パラメータとは同一の型でなければなりません。と表示されます。 例2:関連付けされているファイルのアイコンを取得するには ExtractAssociatedIconを使用します。 とあるので実行しますとコンパイルはできますが、エラーも出ず実行しません。いずれも {ShellAPIを追加} ListViewに貼り付けるアイコンは小さいアイコンでしょうか? 貼り付け方はご指導の通りやってみるつもりですが、肝心のExtractIconEx()が、作動しないためまだ実験はしておりません。 また入門講座とはあちこちのサイトを参考に独習しているのを自分の入門講座と称しております。 以上よろしくお願い致します。m(__)m 例1■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 小さいアイコン(16x16)も取り出したければ、ExtractIconExを使います。 (略) {オープンダイアログで指定したファイルのアイコンを描画} procedure Form1.Button1Click(Sender: TObject); var Icon:TIcon; hLarge,hSmall:THandle; begin Icon:=TIcon.Create; // 大きいアイコンのみExtractIcon は、作動します。 //Icon.Handle:=ExtractIcon(hInstance,PChar('D:\Borland\Bin\delphi32.exe'),0); //小さいアイコンもは:hSmall引数でカーソルが止まりコンパイルできません。 ExtractIconEx(PChar'D:\Borland\Bin\delphi32.exe'), 0, hLarge, hSmall, 1); Icon.Handle:=hSmall; {小さいアイコンを指定} if Icon.Handle<>0 then Image1.Canvas.Draw(0,0,Icon) else ShowMessage('アイコンがありません'); Icon.Free; end; 例2■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ procedure TForm1.Button1Click(Sender: TObject); var icoData : TIcon; wrdIdx : word; begin wrdIdx := 0; //アイコンのインデックス icoData := TIcon.Create; icoData.Handle := ExtractAssociatedIcon(hInstance, PChar('D:\Borland\Bin\D6RegClean.exe'), wrdIdx); Image1.Picture.Icon.Assign (icoData); icoData.Free; end;
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.