- PR -

リストボックスの選択色解除

1
投稿者投稿内容
ヤクルト400
会議室デビュー日: 2004/02/16
投稿数: 18
投稿日時: 2004-03-02 13:22
Windowsアプリケーションでリストボックスを使用していますが、
選択色の解除ができなくて困っています。
一度選択すると紺色(Windows標準の選択色)で、カレント行が色替されるわけですが、
他のコントロールにタブ移動しても紺色が残っているので、複数箇所がアクティブに
なっているようで、どこを選択しているのかがわかりにくくなってしまいます。
リストボックスのメソッドで、「ClearSelected」をしてみても、「SelectIndex=-1」にしてもダメでした。

どなたか、ご存知でしたらよろしくお願いします。
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2004-03-02 22:54
諸農です。

コード:
listBox1.SelectedItem = null;

または

if (listBox1.SelectedIndex > -1)
    listBox1.SetSelected(listBox1.SelectedIndex,false);


などはいかがでしょうか。

_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
ヤクルト400
会議室デビュー日: 2004/02/16
投稿数: 18
投稿日時: 2004-03-03 13:15
ご回答ありがとうございます。
両方試してみましたが、やっぱりだめでした。

先ほど、ちょっと違う方法ですが、自己解決できましたのでご報告いたします。
●リストボックスから他のコントロールにフォーカスを移動する時に、選択モードを「選択不可」にする
(ListBox.SelectMode=None? こんな名前だったかな・・・)
●他のコントロールからリストボックスにフォーカス移動する時に、選択モードを元に戻す

ありがとうございました。

Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-03-03 13:40
> Jubei さん

 フォーカスが離れたときに選択状態の色を表示しない、HideSelectだったかな?このプロパティって、Borland C++ Builderでしたっけ?.NETのコントロールでは見かけた覚えがないような???
JW
常連さん
会議室デビュー日: 2004/01/14
投稿数: 49
投稿日時: 2004-03-03 15:35
余談のみですが

引用:

Jittaさんの書き込み (2004-03-03 13:40) より:
 フォーカスが離れたときに選択状態の色を表示しない、HideSelectだったかな?このプロパティって、Borland C++ Builderでしたっけ?.NETのコントロールでは見かけた覚えがないような???



ListView.HideSelectionと微妙に勘違いしているとか…
Borland系でもListBoxにはないです。
ListViewなら.NETにもあります。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-03-03 16:03
引用:

JWさんの書き込み (2004-03-03 15:35) より:

ListView.HideSelectionと微妙に勘違いしているとか…
Borland系でもListBoxにはないです。
ListViewなら.NETにもあります。


ありがとうございます。これです。ListViewでしたか。ListBoxを探しても無いはずですね。残念。。。
1

スキルアップ/キャリアアップ(JOB@IT)