リストボックスにアイコンを表示するには?


ぐーり  2001-08-29 06:43:32  No: 74812

リストボックスにアイコンを表示する方法、どなたかご存知でしたら
教えて下さい。
よろしくお願いします。


たかみちえ  2001-08-29 07:15:01  No: 74813

OCXにイメージリストボックスとかそう言う名前のものがあります。
でも、それ以上は知りません^^;


Say  2001-08-29 19:59:19  No: 74814

イメージリストは、イメージを格納するだけで、
描画機能ありません。描画するには、Pictureオブジェクトを
表示できるコントロールに関連付ける必要があります。
残念ながら、Vb標準のリストボックスでは表示できません。
対策としては

1.他のコントロールで代用する
  ImageCombo,TreeView,listViewあたりが候補になります。
  これで我慢できるなら、それが一番楽です。
2.人が作ったユーザ自作コントロールを使う
  ListBoxEx なんてのがあります。
  http://www.netlaputa.ne.jp/~stadt/vb/p18/listex.htm
  実体はオーナードローリストボックスです。
3.オーナードローする。
  人がオーナードローでイメージ付きリストボックス作れたのなら、
  自分にも作れるはず・・・でもこれができたらVB中級者卒業かな?

  具体的にはFormの WM_CREATE メッセージひろったら
    lpClassName = "LISTBOX"
    dwStyle = WS_CHILD Or BS_OWNERDRAW 
  で CreateWindow して、
  WM_DRAWITEM メッセージひろったら
  hdc取得して、用意しておいたBitmap使って
  オーナードローする
  みたいな感じですか・・・
  (ちっとも具体的じゃない)
  VBっぽくないんで、Vbで作るのはおすすめしません。
  C/C++で作って、VBから利用するのが吉です。


ぐーり  2001-08-30 22:13:54  No: 74815

ぐーりです。たかみちえさん、Sayさん、回答ありがとうございます!
私が求めていたのは、まさにSayさんが紹介してくれた、オーナードローリストボックスそのものでした。今回、作成するのに、あまり時間ないので、利用させていただくことにします。
どうもありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加