PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
17160 02/03/27 14:37:16 PB7.0: exeやdllファイル内のiconファイルをリストビューに指定する方法 By ココロ

カテゴリ:スクリプトの記述
日付:2002年03月27日 14:37 発信者:ココロ
題名:PB7.0: exeやdllファイル内のiconファイルをリストビューに指定する方法

お世話になります。
リストビューコントロールに、拡張子に関連付けされているプログラムの一覧を表示させ、
なおかつアイコンも表示させようとしているのですが、リストビューのスモールアイコンに
設定する方法が分かりません。
一応、WindowsAPIを使用すれば、iconのハンドルを取得できるところまでは分かったのですが、
リストビューのAddSmallPicture関数では、iconファイルそのものを指定しなければいけないようですし。

なお、スクリプトはこんな感じです。

// グローバル外部関数の宣言
FUNCTION Long ExtractAssociatedIcon( Long hInst , String lpIconPath , REF Long lpiIcon) &
Library \"shell32.dll\" Alias for \"ExtractAssociatedIconA\"
FUNCTION Long DrawIcon(long hdc, long x, long y, long hIcon) library \'user32.dll\'
FUNCTION Long GetDC(long hwnd) library \'user32.dll\'

// メモ帳のiconを取得し、リストビューに描画
long hIcon, lngIconIndex
string ls_path
ls_path = \"c:\\windows\\notepad.exe\"
lngIconIndex = 0
hIcon = ExtractAssociatedIcon(0,ls_path,lngIconIndex)
long ll_get
ll_get = GetDC(Handle(lv_1))
DrawIcon(ll_get,0,0,hIcon)

これだと単にリストビューの固定の位置に描画されるだけですので、いろいろと不都合があり困っています。
そもそもできるのかどうかも分かりませんが、なにかいい方法がありましたら教えてください。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows98
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.