リストビュー(詳細表示時)に2・3列目の文字色を変えるには?

解決


やまさん  2005-02-16 08:01:18  No: 119669

質問失礼しますm(_ _)m
現在リストビュー(詳細表示)を使用して、ログ表示を作成しており(下記参照)、行ごとに文字色を変えたいと思っているのですが、SubItemsに関しての色が変更できません(T_T)
エラーが起こらないので構文が間違っているとは思えないのですが、、、
どなたか、解かるお方がいらっしゃいましたらご教授をお願いします。。。

|現在時間|イベント|内容・・・|
|X:XX|  AA  |BB・・・|
|Y:YY|  CC  |DD・・・|←例えばこの行だけを青色文字にしたい
|Z:ZZ|  EE  |FF・・・|

'2行目セット時の文
Dim itm as ListItem
    Set itm = lsvLog.ListItems.Add(, , Time)
    itm.SubItems(1) = "CC"
    itm.SubItems(2) = "DD"
    
    itm.ForeColor = &HFF0000  '青色セット
    itm.ListSubItems.Item(1).ForeColor = itm.ForeColor  
    itm.ListSubItems.Item(2).ForeColor = itm.ForeColor

(1)、(2)でサブアイテム(2・3列目)も青色にセットしているのですが、1列目しか青くなりません。(「Y:YY」はOk、「CC」、「DD」の色は黒のままです。どぉしてもわからず苦戦しております。
どなたか、お力をお貸しください<(_ _)>

以上、長文失礼しました。


Say  2005-02-16 10:11:27  No: 119670

不都合がないなら
itm.ForeColor = &HFE0000
にしてみるとか


やまさん  2005-02-16 18:15:33  No: 119671

Sayさん、ありがとうございます。
itm.ForeColor=&HFF0000のみで指定してみましたが、
やはりできませんでした(T_T)
何か他の部分で悪さしているものがあるのかもしれないので、
調査してみます。
(同様の経験があるお方がいらっしゃったらコメントお願いします。<(_ _)>)
どうもありがとうございました。


やまさん  2005-02-16 18:30:07  No: 119672

お騒がせしました。(^^;)
もう一度よぉく調べてみたところ、リストビューのプロパティの
「行全体を選択」にチェックが入っておりませんでした。
これにチェックを入れ、

    itm.ForeColor = &HFF0000  '青色セット
    itm.ListSubItems.Item(1).ForeColor = itm.ForeColor    ・・・(1)
    itm.ListSubItems.Item(2).ForeColor = itm.ForeColor    ・・・(2)

を記述したところ、無事に行全体の文字色を変えることができました。
なお、(1)、(2)の記述がないと×でした。
どうもありがとうございました。m(_ _)m


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

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






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