ListViewのFullRowSelectについて


ちゃべす  2006-08-25 01:06:58  No: 132889

言語:VB6
環境:XP

いつも参考にさせていただいています。

元々あるListViewの機能に色分け表示機能を追加したいと考えています。

行・セル単位のBackColorプロパティが見当たらない為、ForeColorとBold
で強調表示することとし、後述のロジックを作りました。

FullRowSelectは、バーカーソルとして使用しています。
HideSelectionは、フォーカス喪失後もカーソル位置が分かるように使用しています。

問題なく色分けすることはできたのですが、
カーソル位置にある行が下記のように表示されることが分かりました。

  フォーカス有り・・・白抜き文字
  フォーカス喪失・・・黒文字

通常色(黒)も上記と同じ状態になる為、データ識別機能としては
弱く感じてしまいます。

このオブジェクトを使用して、カレント位置が分かり、
"登録済み"or"登録未済み"の判別ができるような方法は
ありますでしょうか。

ご存知の方おられましたら、御教授願います。

-------------------------------------------------------
With List
        .View = lvwReport
        .GridLines = True
        .LabelEdit = lvwManual
        .FullRowSelect = True
        .HideSelection = False
End With

'中略

If Len(sData)<>0 Then
'(中略)
Else

    List.ListItems(m).SubItems(n) = "未登録"
    List.ListItems(m).ListSubItems(n).ForeColor = vbRed
    List.ListItems(m).ListSubItems(n).Bold = True
End If
-------------------------------------------------------

以上です。


我龍院忠太  2006-08-25 02:12:01  No: 132890

登録済みと,未登録のImageを変えたらいかがでしょうか。
カレントの場合はImageにドットの網がかかりますが、
赤などの目立つ色を設定すれば解かり易いと思いますが。


ちゃべす  2006-08-25 05:25:23  No: 132891

我龍院 忠太様

回答頂きありがとう御座います。

Imageというもので色々調べたいと思います。

ただ、
Imageというプロパティが無いように思えたのですが、
これはイメージリストというものを使うということでしょうか?

その場合、登録済みと未登録のピクチャみたいなのを用意すれば
良いのでしょうか?

聞いてばかりですみません。
宜しければ、ご回答願います。
以上です。


我龍院忠太  2006-08-25 06:23:21  No: 132892

あれれ!失礼しました、TreeViewと間違えました。
ListViewの場合は、SmallIcon でした。orz


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

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






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